Note that there are some explanatory texts on larger screens.

plurals
  1. POHow do I check for existing username
    text
    copied!<p>I would like to see if a username is already created... I seached, and the mysql_num_row() or whatever it is, doesn't seem to work, i get a T_STRING Error if i use that... Heres my code, that says it should work, but it doesn't, why?:</p> <pre><code>/*simple checking of the data*/ if(isset($_POST['login']) &amp;&amp; isset($_POST['pass']) &amp;&amp; ($_POST['pass'] == $_POST['confirm'])) { /*Connection to database logindb using your login name and password*/ $db=mysql_connect('localhost','user','pass') or die(mysql_error()); mysql_select_db('db'); /*additional data checking and striping*/ $_POST['login']=mysql_real_escape_string(strip_tags(trim($_POST['login']))); $_POST['pass']=mysql_real_escape_string(strip_tags(trim($_POST['pass']))); mysql_query("INSERT INTO profiles SET username='{$_POST['login']}',password='{$_POST['pass']}'",$db); /*If the database has been updated*/ if(mysql_affected_rows() &gt; 0) { $_SESSION['login'] = $_POST['login']; $login='Welcome '.$_SESSION['login']; } else { $login= 'This login name already exists.'; } mysql_close($db); } </code></pre> <p>And i did as showdev suggested but get an error:</p> <p>New code:</p> <pre><code>/*additional data checking and striping*/ $_POST['login']=mysql_real_escape_string(strip_tags(trim($_POST['login']))); $_POST['pass']=mysql_real_escape_string(strip_tags(trim($_POST['pass']))); mysql_query("INSERT INTO profiles SET username='{$_POST['login']}',password='{$_POST['pass']}'",$db); /*If the database has been updated if(mysql_affected_rows() &gt; 0) { $_SESSION['login'] = $_POST['login']; $login='Welcome '.$_SESSION['login']; } else { $login= 'This login name already exists.'; }*/ $sql="SELECT COUNT(*) FROM `profiles` WHERE `username`='$username' AND `password`='$password' LIMIT 0,1;" $q=mysql_query($sql) or die(mysql_error()); $r=mysql_fetch_row($q); if ($r[0]==0) { // insert new user } else { // user already exists } mysql_close($db); } </code></pre> <p>Error:</p> <p>Parse error: syntax error, unexpected T_VARIABLE in /home/teachert/public_html/php/register.php on line 34</p> <p>UPDATE:</p> <p>New Code:</p> <pre><code>mysql_query("INSERT INTO profiles SET `username`='{$_POST['login']}',`password`='{$_POST['pass']}' ON DUPLICATE KEY UPDATE `username`='{$_POST['login']}'",$db); /*If the database has been updated*/ if(mysql_affected_rows() == 1) { $_SESSION['login'] = $_POST['login']; $login='Welcome '.$_SESSION['login']; } else { $login= 'This login name already exists.'; } mysql_close($db); } </code></pre> <p>Still doesn't work</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload