Bernd Wurst commited on 2014-02-06 09:30:25
Zeige 1 geänderte Dateien mit 24 Einfügungen und 31 Löschungen.
... | ... |
@@ -18,9 +18,9 @@ require_once('session/checkuser.php'); |
18 | 18 |
|
19 | 19 |
function user_customer_match($cust, $user) |
20 | 20 |
{ |
21 |
- $customerno = (int) $cust; |
|
22 |
- $username = db_escape_string($user); |
|
23 |
- $result = db_query("SELECT uid FROM system.useraccounts WHERE kunde={$customerno} AND username='{$username}' AND kundenaccount=1;"); |
|
21 |
+ $args = array(":cid" => $cust, |
|
22 |
+ ":user" => $user); |
|
23 |
+ $result = db_query("SELECT uid FROM system.useraccounts WHERE kunde=:cid AND username=:user AND kundenaccount=1", $args); |
|
24 | 24 |
if ($result->rowCount() > 0) |
25 | 25 |
return true; |
26 | 26 |
return false; |
... | ... |
@@ -30,9 +30,9 @@ function user_customer_match($cust, $user) |
30 | 30 |
|
31 | 31 |
function customer_has_email($customerno, $email) |
32 | 32 |
{ |
33 |
- $customerno = (int) $customerno; |
|
34 |
- $email = db_escape_string($email); |
|
35 |
- $result = db_query("SELECT NULL FROM kundendaten.kunden WHERE id=".$customerno." AND (email='{$email}' OR email_extern='{$email}' OR email_rechnung='{$email}');"); |
|
33 |
+ $args = array(":cid" => $customerno, |
|
34 |
+ ":email" => $email); |
|
35 |
+ $result = db_query("SELECT NULL FROM kundendaten.kunden WHERE id=:cid AND (email=:email OR email_extern=:email OR email_rechnung=:email)", $args); |
|
36 | 36 |
return ($result->rowCount() > 0); |
37 | 37 |
} |
38 | 38 |
|
... | ... |
@@ -40,9 +40,9 @@ function customer_has_email($customerno, $email) |
40 | 40 |
function validate_token($customerno, $token) |
41 | 41 |
{ |
42 | 42 |
expire_tokens(); |
43 |
- $customerno = (int) $customerno; |
|
44 |
- $token = db_escape_string($token); |
|
45 |
- $result = db_query("SELECT NULL FROM kundendaten.kunden WHERE id={$customerno} AND token='{$token}';"); |
|
43 |
+ $args = array(":cid" => $customerno, |
|
44 |
+ ":token" => $token); |
|
45 |
+ $result = db_query("SELECT NULL FROM kundendaten.kunden WHERE id=:cid AND token=:token", $args); |
|
46 | 46 |
return ($result->rowCount() > 0); |
47 | 47 |
} |
48 | 48 |
|
... | ... |
@@ -50,8 +50,7 @@ function validate_token($customerno, $token) |
50 | 50 |
function get_uid_for_token($token) |
51 | 51 |
{ |
52 | 52 |
expire_tokens(); |
53 |
- $token = db_escape_string($token); |
|
54 |
- $result = db_query("SELECT uid FROM system.usertoken WHERE token='{$token}';"); |
|
53 |
+ $result = db_query("SELECT uid FROM system.usertoken WHERE token=?", array($token)); |
|
55 | 54 |
if ($result->rowCount() == 0) { |
56 | 55 |
return NULL; |
57 | 56 |
} |
... | ... |
@@ -61,8 +60,7 @@ function get_uid_for_token($token) |
61 | 60 |
|
62 | 61 |
function get_username_for_uid($uid) |
63 | 62 |
{ |
64 |
- $uid = (int) $uid; |
|
65 |
- $result = db_query("SELECT username FROM system.useraccounts WHERE uid={$uid}"); |
|
63 |
+ $result = db_query("SELECT username FROM system.useraccounts WHERE uid=?", array($uid)); |
|
66 | 64 |
if ($result->rowCount() != 1) { |
67 | 65 |
system_failure("Unexpected number of users with this uid (!= 1)!"); |
68 | 66 |
} |
... | ... |
@@ -73,9 +71,9 @@ function get_username_for_uid($uid) |
73 | 71 |
function validate_uid_token($uid, $token) |
74 | 72 |
{ |
75 | 73 |
expire_tokens(); |
76 |
- $uid = (int) $uid; |
|
77 |
- $token = db_escape_string($token); |
|
78 |
- $result = db_query("SELECT NULL FROM system.usertoken WHERE uid={$uid} AND token='{$token}';"); |
|
74 |
+ $args = array(":uid" => $uid, |
|
75 |
+ ":token" => $token); |
|
76 |
+ $result = db_query("SELECT NULL FROM system.usertoken WHERE uid=:uid AND token=:token", $args); |
|
79 | 77 |
return ($result->rowCount() > 0); |
80 | 78 |
} |
81 | 79 |
|
... | ... |
@@ -89,38 +87,35 @@ function expire_tokens() |
89 | 87 |
|
90 | 88 |
function invalidate_customer_token($customerno) |
91 | 89 |
{ |
92 |
- $customerno = (int) $customerno; |
|
93 |
- db_query("UPDATE kundendaten.kunden SET token=NULL, token_create=NULL WHERE id={$customerno} LIMIT 1;"); |
|
90 |
+ db_query("UPDATE kundendaten.kunden SET token=NULL, token_create=NULL WHERE id=?", array($customerno)); |
|
94 | 91 |
} |
95 | 92 |
|
96 | 93 |
function invalidate_systemuser_token($uid) |
97 | 94 |
{ |
98 |
- $uid = (int) $uid; |
|
99 |
- db_query("DELETE FROM system.usertoken WHERE uid={$uid} LIMIT 1;"); |
|
95 |
+ db_query("DELETE FROM system.usertoken WHERE uid=?", array($uid)); |
|
100 | 96 |
} |
101 | 97 |
|
102 | 98 |
function create_token($username) |
103 | 99 |
{ |
104 |
- $username = db_escape_string($username); |
|
105 | 100 |
expire_tokens(); |
106 |
- $result = db_query("SELECT uid FROM system.useraccounts WHERE username='{$username}'"); |
|
101 |
+ $result = db_query("SELECT uid FROM system.useraccounts WHERE username=?", array($username)); |
|
107 | 102 |
$uid = (int) $result->fetch()['uid']; |
108 | 103 |
|
109 |
- $result = db_query("SELECT created FROM system.usertoken WHERE uid={$uid}"); |
|
104 |
+ $result = db_query("SELECT created FROM system.usertoken WHERE uid=?", array($uid)); |
|
110 | 105 |
if ($result->rowCount() > 0) { |
111 | 106 |
system_failure("Für Ihr Benutzerkonto ist bereits eine Passwort-Erinnerung versendet worden. Bitte wenden Sie sich an den Support wenn Sie diese nicht erhalten haben."); |
112 | 107 |
} |
113 | 108 |
|
114 |
- $token = random_string(16); |
|
115 |
- db_query("INSERT INTO system.usertoken VALUES ({$uid}, NOW(), NOW() + INTERVAL 1 DAY, '{$token}')"); |
|
109 |
+ $args = array(":uid" => $uid, |
|
110 |
+ ":token" => random_string(16)); |
|
111 |
+ db_query("INSERT INTO system.usertoken VALUES (:uid} NOW(), NOW() + INTERVAL 1 DAY, :token)", $args); |
|
116 | 112 |
return true; |
117 | 113 |
} |
118 | 114 |
|
119 | 115 |
|
120 | 116 |
function emailaddress_for_user($username) |
121 | 117 |
{ |
122 |
- $username = db_escape_string($username); |
|
123 |
- $result = db_query("SELECT k.email FROM kundendaten.kunden AS k INNER JOIN system.useraccounts AS u ON (u.kunde=k.id) WHERE u.username='{$username}'"); |
|
118 |
+ $result = db_query("SELECT k.email FROM kundendaten.kunden AS k INNER JOIN system.useraccounts AS u ON (u.kunde=k.id) WHERE u.username=?", array($username)); |
|
124 | 119 |
$data = $result->fetch(); |
125 | 120 |
return $data['email']; |
126 | 121 |
} |
... | ... |
@@ -128,9 +123,8 @@ function emailaddress_for_user($username) |
128 | 123 |
|
129 | 124 |
function get_customer_token($customerno) |
130 | 125 |
{ |
131 |
- $customerno = (int) $customerno; |
|
132 | 126 |
expire_tokens(); |
133 |
- $result = db_query("SELECT token FROM kundendaten.kunden WHERE id={$customerno} AND token IS NOT NULL;"); |
|
127 |
+ $result = db_query("SELECT token FROM kundendaten.kunden WHERE id=? AND token IS NOT NULL", array($customerno)); |
|
134 | 128 |
if ($result->rowCount() < 1) |
135 | 129 |
system_failure("Kann das Token nicht auslesen!"); |
136 | 130 |
return $result->fetch(PDO::FETCH_OBJ)->token; |
... | ... |
@@ -139,8 +133,7 @@ function get_customer_token($customerno) |
139 | 133 |
|
140 | 134 |
function get_user_token($username) |
141 | 135 |
{ |
142 |
- $username = db_escape_string($username); |
|
143 |
- $result = db_query("SELECT token FROM system.usertoken AS t INNER JOIN system.useraccounts AS u USING (uid) WHERE username='{$username}'"); |
|
136 |
+ $result = db_query("SELECT token FROM system.usertoken AS t INNER JOIN system.useraccounts AS u USING (uid) WHERE username=?", array($username)); |
|
144 | 137 |
$tmp = $result->fetch(); |
145 | 138 |
return $tmp['token']; |
146 | 139 |
} |
147 | 140 |