I'm just beginning with PHP and came across something which is frustrating me no end. I have a really simple script which given a username will query the database and if it doesn't find a match will then insert into the database. The problem I find is that even when there is no data in the database to match the return from mysql_query evaluates to true even though all the documentation and tutorials that I have read say that mysql_query should return false when using a SELECT query if there is no match. Am I missing something really simple here or is there another explaination as to why this might be the case? The following code snippet exhibits this behaviour. I am running the following: Apache 2.0.54, PHP 5.0.5-2, MySQL 4.1.12. <?php $username = "david"; $conn = mysql_connect('localhost','user','pass'); mysql_select_db('test',$conn); $sql = "SELECT * FROM users WHERE username='$username'"; echo $sql."<br/>"; $result = mysql_query($sql,$conn); echo $result."<br/.>"; if (!$result) echo "No Match!<br/>"; else { $row = mysql_fetch_array($result); while ($row) { echo $row['username'].' -- '.$row['email'].'<br/>'; $row = mysql_fetch_array($result); } } mysql_close(); ?> Cheers, David -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php