PHP 和MySQL:解決「mysqli_num_rows() 期望參數1 為mysqli_result,給定布林值」錯誤
if (mysqli_num_rows($dbc) == 0) {這裡,變數$dbc 用作mysqli_num_rows() 的輸入,但它傳回false,因為在$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");查詢中的錯誤是用戶和個人資料表之間缺少JOIN 關鍵字:
SELECT users.*, profile.* --You do not join with profile anywhere. FROM users INNER JOIN contact_info ON contact_info.user_id = users.user_id WHERE users.user_id=3");要解決此問題,您應該按如下方式修改查詢:
$dbc = mysqli_query($mysqli,"SELECT users.*, profile.* FROM users INNER JOIN profile ON contact_info.user_id = users.user_id WHERE users.user_id=3");透過修正查詢,mysqli_num_rows()函數現在將收到有效的結果集並能夠確定結果中的行數是否為零。
以上是為什麼「mysqli_num_rows()」傳回布林值而不是結果集?的詳細內容。更多資訊請關注PHP中文網其他相關文章!