2023-04-14 Fatal error: Call to a member function fetch_assoc() on a non-object in C:\wamp\www\work\user.php on line 860
问题:php报错。
业务场景:使用update语句去更新数据库字段。
原因:update接收值不正确。
原代码:
$query = "UPDATE student SET date = now() WHERE id = $id"; $result = $mysqli->query($query2) or die($mysqli->error); // 问题出在这 $data = $result->fetch_assoc();
if ($data) {
$ary = array('data' => '', 'msg' => '更新成功', 'status' => '0');
} else {
$ary = array('data' => '', 'msg' => '更新失败', 'status' => '1');
}
exit(JSON($ary));
修改后:
$query = "UPDATE student SET date = now() WHERE id = $id"; $result = $mysqli->query($query2); // 把or die($mysqli->error)删了
$data = $result->fetch_assoc(); if ($data) { $ary = array('data' => '', 'msg' => '更新成功', 'status' => '0'); } else { $ary = array('data' => '', 'msg' => '更新失败', 'status' => '1'); } exit(JSON($ary));
问题就出在or die($mysqli->error)这里。但我还是不太明白,为什么select可以用or die($mysqli->error),而update就不行了呢,是因为我的$data判断有误吗?
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧