ホームページ >バックエンド開発 >PHPチュートリアル >`mysqli_num_rows()` が「パラメーター 1 が mysqli_result、ブール値が与えられることを期待する」を返すのはなぜですか?

`mysqli_num_rows()` が「パラメーター 1 が mysqli_result、ブール値が与えられることを期待する」を返すのはなぜですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-28 03:28:15544ブラウズ

Why Does `mysqli_num_rows()` Return

PHP と MySQL: mysqli_num_rows() パラメーター エラーの修正

エラー「mysqli_num_rows() はパラメーター 1 が mysqli_result であることを期待しており、ブール値が指定されています」関数が有効な MySQL 結果を期待していることを示しますobject が最初のパラメータとして指定されていますが、ブール値が渡されています。

この場合、問題は mysqli_query() 呼び出しで使用されるクエリに構文エラーが含まれていることが原因で発生します。問題は SELECT ステートメントにあります:

SELECT users.*, profile.*
FROM users 
INNER JOIN contact_info ON contact_info.user_id = users.user_id 
WHERE users.user_id=3");

クエリは users テーブルと contact_info テーブルの間で内部結合を実行しようとしていますが、JOIN 句が欠落しています。正しいクエリは次のようになります。

SELECT users.*, profile.*
FROM users 
INNER JOIN profile ON profile.user_id = users.user_id 
WHERE users.user_id=3");

クエリが修正されると、mysqli_query() は有効な結果オブジェクトを返し、それを最初のパラメータとして mysqli_num_rows() に渡すことができます。

以上が`mysqli_num_rows()` が「パラメーター 1 が mysqli_result、ブール値が与えられることを期待する」を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。