ホームページ  >  に質問  >  本文

mysqli_query エラーを表示する方法

<p>php スクリプトで mysqli_error を表示しようとしています。クエリが失敗すると黒いページが表示され続けますが、成功すると応答が返されます。クエリが失敗すると、mysqli_error($conn) と mysqli_errno( $conn) 黒いページが表示されるだけです。 これは私のデータベース接続スクリプトです</p> <pre class="brush:php;toolbar:false;"><?php $ser = "テスト"; $user = "テスト"; $pass = "テスト"; $db="テスト"; $conn = mysqli_connect($ser, $user, $pass, $db); if (!$conn) { die("接続に失敗しました: " .mysqli_connect_error()); } ?></pre> <p>私の PHP クエリ</p> <pre class="brush:php;toolbar:false;"><?php 「conn.php」をインクルードします。 if ($conn) { $sql = "INSERT INTO tbl_users (userId, email, pass) VALUES ('$userId', '$email', '$pass')"; if (mysqli_query($conn, $sql)) { echo json_encode(array( "ステータス" => "OK"、 "メッセージ" => "成功"、 )); } それ以外 { echo json_encode(array( "ステータス" => "エラー"、 "メッセージ" => mysqli_error($conn), )); } }</pre> <p>クエリが正しく実行されれば、成功した応答を得ることができますが、<strong>ini_set('display_errors', 1);</strong> を使用すると、エラーが発生すると空白が表示されます。 page;< /strong> ページ全体のエラーが発生しますが、mysqli_error または mysqli_errno だけが必要です。 </p>
P粉713846879P粉713846879386日前482

全員に返信(1)返信します

  • P粉538462187

    P粉5384621872023-09-02 11:56:45

    PHP 8.1 の時点では、mysqli エラー レポートのデフォルト設定は MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT であり、これによりエラーは false を返すだけでなく例外をスローします。

    例外を取得するのではなく、コード内のエラーをチェックしたい場合は、

    を使用します。 リーリー

    より良い解決策は、例外ハンドラーを使用することです。

    リーリー

    返事
    0
  • キャンセル返事