2012-03-19 40 views
0
elseif(isset($_POST['submit'])) 
{ 
    // Look for their user 
    $lookuser = mysql_query("SELECT * FROM `users` WHERE username='". mysql_escape_string($_POST['username']) ."'"); 
    // If we find a row 
    if(mysql_num_rows($lookuser) > 0) 

但我其他为,回声:An error has occured. <br> If you are sure you entered your username correctly, please contact an administrator.mysql_num_rows PHP

我试图呼应$_POST['username'];都工作地很好。我确定我的用户存在,这工作正常。

PHP的错误,我得到: Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in password.php on line 23

+0

您在查询中没有执行任何错误检查。为什么不?如果查询失败,这也就不足为奇了。此参考问题显示如何:http://stackoverflow.com/questions/6198104/reference-what-is-a-perfect-code-sample-using-the-mysql-extension – 2012-03-19 22:16:21

+0

也许多一点的代码会有所帮助。 – 2012-03-19 22:16:35

+0

你是否回显了mysql_error()? $ lookuser = mysql_query(“SELECT * FROM'users' WHERE username ='”。mysql_escape_string($ _ POST ['username'])。“'”)or die(mysql_error()); – 2012-03-19 22:17:17

回答

0

你可能在你的SQL查询有错误。可以肯定的是,在你的mysql_query mysql_error()之后回显。

1

Php.net说,这个关于请求mysql_query的返回值:

For SELECT, SHOW, DESCRIBE, EXPLAIN and other statements returning resultset, mysql_query() returns a resource on success, or FALSE on error.

如果你得到一个布尔值,这是因为有一个MySQL错误。使用mysql_error()打印该错误,它将帮助您诊断问题。