Here is my snippet.
I’ve checked some other questions similar to my error, but so far I can’t get it solved.
<?php function user_exists ($username) { $username = sanitize($username); return (mysql_result(mysql_query("SELECT COUNT(user_id) FROM users WHERE username = $username"), 0) == 1) ? true : false; } ?>
Advertisement
Answer
You should split your code in some more lines to handle those errors or special cases. mysql_query
will return zero to n rows or an error if it occurs. The returned resource will therefore only be true on non-error queries. This can be used to handle such situations like follows.
At first build and execute query, next process the resource.
$query="SELECT COUNT(user_id) FROM users WHERE username = ".$username; $result = mysql_query($query);
u may use the following to determine what is going on in case of an error:
if(!$result) die("SELECT failed: ".mysql_error());
or these idea to handle the problem
if (!$result=mysql_query($query)) { return false; // or similar operation } if (mysql_num_rows($result)!=1){ return false; }else{ return true; }