2010-08-22 73 views
-1

任何人都可以告诉我为什么我收到这些错误,当我这样做?mysql_fetch_array&num_rows错误 - 帮助!

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); 

回答

1

你可能有让你查询时出现错误。尝试

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

mysql_query文档:

返回值:对于SELECT,SHOW, 描述,解释等语句 返回结果集,请求mysql_query() 成功返回一个资源,或 错误时发生错误。

看起来你的mySQL查询包含某种错误(你是否转义了你要放入的字符串?),因此$ result是FALSE,因此是警告。试试这个:

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

Mysql_query returns false当执行的查询包含错误。尝试使用mysql_error来找出哪里出了问题。

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