在PHP中,mysqli_num_rows函数用于获取查询结果的行数。如果该函数报错,通常是因为传递给该函数的参数不正确或者查询语句有误。
解决方法如下:
- 确保你已正确连接到数据库,并获得有效的连接对象。可以使用mysqli_connect函数来连接数据库。
- 确保你已经执行了查询语句,并且查询结果保存在一个有效的结果集对象中。可以使用mysqli_query函数执行查询语句,并将结果保存在一个变量中。
- 在调用mysqli_num_rows函数之前,确保你已经检查了查询操作是否成功。可以使用mysqli_error函数来检查是否有错误发生。
- 确保你在调用mysqli_num_rows函数时传递了正确的参数。该函数接受一个结果集对象作为参数。
以下是一个示例代码,展示了如何正确使用mysqli_num_rows函数:
// 连接到数据库
$conn = mysqli_connect("localhost", "username", "password", "database");
// 检查连接是否成功
if (!$conn) {
die("连接失败: " . mysqli_connect_error());
}
// 执行查询语句
$result = mysqli_query($conn, "SELECT * FROM table");
// 检查查询是否成功
if (!$result) {
die("查询错误: " . mysqli_error($conn));
}
// 获取查询结果的行数
$numRows = mysqli_num_rows($result);
// 输出查询结果的行数
echo "查询结果的行数为: " . $numRows;
// 关闭数据库连接
mysqli_close($conn);
请注意,上述示例仅供参考,实际情况可能因数据库配置和查询语句的不同而有所变化。您需要根据实际情况进行相应的调整。