mysqli_num_rows() 期望参数 1 为 mysqli_result,给定布尔值
错误消息“mysqli_num_rows( ) 期望参数 1 为 mysqli_result,当尝试对布尔值而不是有效的 MySQL 结果集 (mysqli_result) 使用 mysqli_num_rows() 函数时,会出现“boolean给定”。
在提供的代码中,第 22 行发生错误:
if (mysqli_num_rows($dbc) == 0) {
使用 mysqli_query() 函数在第 13 行分配变量 $dbc。但是,检查查询会发现错误:
$dbc = mysqli_query($mysqli,"SELECT users.*, profile.* FROM users INNER JOIN contact_info ON contact_info.user_id = users.user_id WHERE users.user_id=3");
查询尝试使用“INNER JOIN”连接“users”和“profile”表,但“profile”和“profile”之间没有连接条件任何其他表。结果,查询返回 false(布尔值 false)。
要解决该错误,必须更正查询以包含正确的连接条件。以下是更正后的查询:
$dbc = mysqli_query($mysqli,"SELECT users.*, profile.* FROM users INNER JOIN profile ON users.user_id = profile.user_id WHERE users.user_id=3");
通过此更正,查询将返回有效的 MySQL 结果集,从而允许 mysqli_num_rows() 正确运行。
以上是为什么 `mysqli_num_rows()` 返回'期望参数 1 为 mysqli_result,给定布尔值”?的详细内容。更多信息请关注PHP中文网其他相关文章!