Diff Revisions 784 vs 805 for /branches/0.9/functions/register.php

Diff revisions: vs.
784 805   <- Revisions
       
      Diff lines for:
 Rev 784 : Lines 19 -> 30
 Rev 805 : Lines 19 -> 34
19 19 $captcha = call('captchacheck', $captcha);
20 20 if($settings['register_captcha'] =='on' && $captcha == false)
21 21 return false;
22 - $sql = call('sql_query', "SELECT * FROM users WHERE user = '$username'");
23 - $fetch = call('sql_fetch_array',$sql);
24 - if ($fetch['user'] == $username) {
25 - $error[] = 'Username is already taken!';
22 + $sql = call('sql_query', "SELECT user FROM users WHERE user = '$username'");
23 + if (call('sql_num_rows', $sql) != 0) {
24 + $error[] = 'Username is already taken';
26 25 return false;
27 26 }
27 + $sql = call('sql_query', "SELECT email FROM users WHERE email = '$email'");
28 + if (call('sql_num_rows', $sql) != 0) {
29 + $error[] = 'Email address is already in use';
30 + return false;
31 + }
28 32 if (empty($username)) {
29 33 $error[] = 'You did not enter a username'; //idiot how on earth are people meant to know who u are!
30 34 return false;
       
      Diff lines for:
 Rev 784 : Lines 33 -> 40
 Rev 805 : Lines 37 -> 39
33 37 $error[] = 'password must be 6 characters or longer!';
34 38 return false;
35 39 }
36 - $decodedusername = str_replace('&lt;', '<', $username);
37 - $decodedusername = str_replace('&gt;', '>', $decodedusername);
40 + $decodedusername = html_entity_decode($username, ENT_QUOTES);
38 41 if (strlen($decodedusername) > 16) {
39 42 $error[] = 'Your username is too long, it must be below 16 characters';
40 43 return false;