为了账号安全,请及时绑定邮箱和手机立即绑定

如何防止出现此错误:警告:mysql_fetch_assoc()期望参数1为资源,在第11行的…

如何防止出现此错误:警告:mysql_fetch_assoc()期望参数1为资源,在第11行的…

德玛西亚99 2019-10-22 21:12:18
我对此错误感到非常困惑,它显示了当我尝试从不存在的数据库中返回结果时...我尝试了,mysql_num_rows()但返回的错误却是相同的错误,而不是mysql_fetch_assoc期望中的错误mysql_num_rows()。我设置error_reporting(0)避免显示此错误,但是我对这种解决方案不满意...
查看完整描述

3 回答

?
12345678_0001

TA贡献1802条经验 获得超5个赞

这是做事的正确方法:


<?PHP

$sql = 'some query...';

$result = mysql_query($q);


if (! $result){

   throw new My_Db_Exception('Database error: ' . mysql_error());

}


while($row = mysql_fetch_assoc($result)){

  //handle rows.

}

请注意(!$ result)上的检查-如果$ result是布尔值,则肯定为false,这意味着存在数据库错误,这意味着查询可能很糟糕。


查看完整回答
反对 回复 2019-10-22
?
慕雪6442864

TA贡献1812条经验 获得超5个赞

您必须检查mysql_query返回的结果是否为false。


$r = mysql_qyery("...");

if ($r) {

  mysql_fetch_assoc($r);

}

您可以使用@mysql_fetch_assoc($r)以避免错误显示。


查看完整回答
反对 回复 2019-10-22
  • 3 回答
  • 0 关注
  • 645 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信