我正在尝试SELECT COUNT表的总记录,我做错了什么?提前致谢
我收到了这个错误
致命错误:在布尔值上调用成员函数fetch_row()
<?php
$mysqli = new mysqli('localhost','root','','testing');
//Output any connection error
if ($mysqli->connect_error) {
die('Error : ('. $mysqli->connect_errno .') '. $mysqli->connect_error);
}
//get total number of records
$results = $mysqli->query("SELECT COUNT(*) FROM users");
$get_total_rows = $results->fetch_row(); //hold total records in variable
$mysqli->close();
?>
6 回答
只要表存在,您的代码就可以正常工作 .
我创建了一个简单的表格如下:
并在代码中插入一行:
在屏幕上打印3 . 但是如果我拼错了表名,我可以重现你看到的错误 .
因此请仔细检查您的表名是否正确 .
我敢打赌
$results
的值是FALSE,而不是结果集,因为我猜你有一个SQL错误 . 尝试在SQL客户端中运行该语句,或者在线检查错误:$results = $mysqli->query("SELECT COUNT(*) FROM users") or die($mysqli->error);
在访问结果之前,您还可以先查询是否有查询脚本的错误 .
正如文档所述,mysqli :: query在失败时返回FALSE . 所以你可以先通过mysql控制台检查你的SQL语句 .
我今天偶然发现了同样的错误,并通过搜索引擎找到了这个问题 .
我能够通过在之前运行的查询结尾添加
$stmt->close();
来解决它 .我有同样的问题 .