ホームページ >バックエンド開発 >PHPチュートリアル >mysqli_multi_query で「mysqli_next_result(): 次の結果セットがありません」エラーが発生するのはなぜですか?
厳格な標準: mysqli_multi_query での mysqli_next_result() エラー
多くの開発者は、mysqli_multi_query を使用するときに厳格な標準エラーに遭遇します。このエラー メッセージは「mysqli_next_result(): 次の結果セットがありません。mysqli_more_results()/mysqli::more_results() を呼び出して、この関数/メソッドを呼び出すかどうかを確認してください。」
ルート原因
エラーは次の場合に発生します。 mysqli_multi_query は、後続の結果セットがあるかどうかを確認せずに使用されます。デフォルトでは、mysqli_next_result は、結果セットが存在しない場合でも、次の結果セットに進みます。このエラーを回避するには、関数 mysqli_more_results を事前に呼び出して、追加の結果セットの存在を確認する必要があります。
解決策
問題を解決するには、次のコードを使用します。 :
if (mysqli_multi_query($db, $querystring)) { do { if ($result = mysqli_store_result($db)) { // ... } } while (mysqli_more_results($db) && mysqli_next_result($db)); }
これにより、mysqli_next_result のみが実行されることが保証されます後続の結果セットがある場合。
追加メモ
以上がmysqli_multi_query で「mysqli_next_result(): 次の結果セットがありません」エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。