ホームページ >バックエンド開発 >PHPチュートリアル >mysqli_fetch_array() 関数が「引数 #1 は mysqli_result 型である必要があります」エラーをスローするのはなぜですか?それを修正するにはどうすればよいですか?

mysqli_fetch_array() 関数が「引数 #1 は mysqli_result 型である必要があります」エラーをスローするのはなぜですか?それを修正するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-26 11:42:10459ブラウズ

Why is my mysqli_fetch_array() function throwing an

MySQLi エラーの解決: mysqli_fetch_array() 無効な引数と同様の問題

MySQLi で、「mysqli_fetch_array(): Argument #1 は mysqli_result 型である必要があります」のようなエラーが発生するSQL の実行に失敗したことを示しますクエリ。この問題および他の同様の問題を解決するには、次のガイドラインに従ってください。

1. mysqli エラー レポートを有効にする

常に mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); を含めます。 mysqli 接続の前に、詳細なエラー メッセージを表示します。その後、PHP は MySQL エラーに対して致命的なエラーを生成し、エラーの原因を明確にします。

2.プリペアド ステートメントを使用する

SQL クエリ内の PHP 変数を疑問符に置き換えます。 $stmt = $mysqli->prepare("SELECT id, description FROM tbl_page_answer_category WHERE cur_own_id = ?"); のような準備済みステートメントを使用してクエリを実行します。これにより、トークンの不一致や無効な入力による構文エラーが防止されます。

3.エラー メッセージを確認する

MySQL によって生成されたエラー メッセージを調べます。これには、ファイル名、行番号、および問題の詳細な説明が含まれています。簡単な解決策を見つけるだけではなく、エラーを理解することに重点を置きます。テーブルが存在すること、クエリ構文が正しいこと、ロジック フローがクエリ実行ポイントに到達していることを確認してください。

4.基本的なデバッグ

クエリが実行されているように見えても結果が生成されない場合は、次の要素を考慮してください:

  • クエリがエラーなしで実行されたことを確認します。
  • プログラムが実行されていることを確認します。ロジックはクエリ実行ポイントまで正しく流れます。
  • 結果が正しい順序で表示されていることを確認してください。データベース。
  • 入力データを調べて、データベース形式と一致していることを確認します。

以上がmysqli_fetch_array() 関数が「引数 #1 は mysqli_result 型である必要があります」エラーをスローするのはなぜですか?それを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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