使用時のエラー メッセージ
ユーザー入力をフィルタリングし、クエリを実行するための HTML Purifier mysqli_query() を実行すると、次のエラーが発生する可能性があります:
mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given
このエラーは、mysqli_num_rows() が mysqli_result オブジェクトではなくブール値で呼び出されたときに発生します。
解決策
エラーの根本原因は、 SQLクエリ。指定されたコードのクエリ:
SELECT users.*, profile.* FROM users INNER JOIN contact_info ON contact_info.user_id = users.user_id WHERE users.user_id=3");
にエラーが含まれています。クエリのどこにもプロファイル テーブルとの JOIN がありません。これを修正するには、クエリに正しい JOIN ステートメントを含める必要があります。
修正されたクエリ:
SELECT users.*, profile.* FROM users INNER JOIN profile ON contact_info.user_id = users.user_id WHERE users.user_id=3");
以上がHTML Purifier と mysqli_query() を使用した後、`mysqli_num_rows()` が「与えられたブール値」を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。