我对使用PHP时如何调试和处理错误有所了解。然而,这是一个异常。
通过mysqli成功创建与Mysql数据库的连接后,我尝试从中获取结果。
if($result = $db->query($query)) {
$num_results = $result->num_rows;
echo "<p> Number of books found: ".$num_results."</p>";
$row = $result->fetch_assoc(); //no problem if I use fetch_row
奇怪的是,整个页面崩溃,浏览器显示“无法显示网页”。
我尝试找出问题并替换“$ row = $ result-&gt; fetch_assoc();”行“$ row = $ result-&gt; fetch_row();”它成功地从数据库中获取结果(为了简洁起见,我没有在这里显示上面/下面的代码)。
事实证明,“fetch_array”和“fetch_object”也失败了。一旦我发表评论,编码的另一部分工作得很好。所以我只是想知道fetch_row如何工作,但“fetch_array / object / assoc”似乎使整个页面崩溃(不只是函数本身,也没有PHP错误消息)。
答案 0 :(得分:0)
您没有看到错误,因为您没有启用错误,我相信您没有使用正确的功能拨打fetch array
或fetch association
,在您的班级中搜索正确的功能,因为我相信fetch_array()
,fetch_assoc()
会在php中引发致命错误。
在您的apache日志中搜索。
尝试在您的php文件中添加:
ini_set('display_errors', E_ALL);
error_reporting(E_ALL);