可能重复:
mysql_fetch_array() expects parameter 1 to be resource, boolean given in select
Warning: mysql_fetch_* expects parameter 1 to be resource, boolean given error
我在谷歌上搜索以下错误的答案。但没有找到一个好的明确解决的答案。此错误仅显示时间。有时候它有效,有时它不起作用。请帮助我弄明白。
这是在我的本地服务器上运行的cron tab php脚本,用于同步来自在线服务器的数据。
$db_online = mysql_connect("localhost", "root", "mypw",true)
or die('Could not connect to mysql server');
mysql_select_db("tblMember",$db_online);
$sql="SELECT * FROM members WHERE catid='2' ORDER BY id ASC LIMIT 0,5";
$result= mysql_query($sql,$db_online) or trigger_error(mysql_error().$sql);
$numRows = mysql_num_rows($result);
echo $numRows;
答案 0 :(得分:1)
trigger_error
生成E_USER_NOTICE
,但不会中断流程。
在这种情况下,mysql_count_rows
仍然会被执行。
试试这个:
if ($result = mysql_query($sql, $db_online))
$numRows = mysql_num_rows($result);
else
trigger_error(mysql_error().$sql);
答案 1 :(得分:-1)
每当您的查询失败时,它将返回false
而不是查询结果资源。在这些情况下,mysql_num_rows()
无法正常工作,因为它无法计算false
上的行数。您需要捕获此可能的错误。也许是这样的:if (!$result) die('Error');