mysql_fetch_array& num_rows错误 - 帮助!

时间:2010-08-22 20:57:02

标签: php

当我这样做时,有谁能告诉我为什么我收到这些错误?

   Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\login\index.php on line 63

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\login\index.php on line 65

当我这样做时:

    $sql="SELECT id FROM users WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);
$row=mysql_fetch_array($result);
$active=$row['active'];
$count=mysql_num_rows($result);

3 个答案:

答案 0 :(得分:1)

您的查询可能有错误。尝试

$result=mysql_query($sql) or die(mysql_error());

答案 1 :(得分:1)

来自mysql_query的文档:

  

返回值:对于SELECT,SHOW,   DESCRIBE,EXPLAIN和其他声明   返回结果集,mysql_query()   在成功时返回资源,或   错误时为FALSE。

你的mySQL查询似乎包含某种错误(你是否已经放弃了你输入的字符串?),因此$ result为FALSE,因此警告。试试这个:

$result = mysql_query($sql);
if (!$result) {
    echo mysql_error();
}

答案 2 :(得分:0)

当执行的查询包含错误时,

Mysql_query returns false。尝试使用mysql_error找出问题所在。

Mysql_num_rows和mysql_fetch_array都期望有效查询的结果。