ホームページ  >  記事  >  データベース  >  PHP for MySQL で重複エントリ エラーを処理する方法は?

PHP for MySQL で重複エントリ エラーを処理する方法は?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-12 06:35:02665ブラウズ

How to Handle Duplicate Entry Errors in PHP for MySQL?

PHP for MySQL での重複エントリ エラーの処理

PHP を使用して MySQL データベースにデータを挿入すると、重複エントリ エラーが発生する可能性があります主キー値がすでに存在する場合。返されるデフォルトのエラー メッセージはユーザー フレンドリーではないため、ユーザーに問題について通知することが困難です。

これに対処するために、PHP は特定の MySQL エラーをチェックし、それに応じて処理する方法を提供します。最初のステップは、重複エントリのエラー コードを特定することです。この場合、コードは 1062 です。

エラー コードを取得したら、それを使用して、クエリの実行によってこの特定のエラーがトリガーされたかどうかを確認できます。

$result = mysqli_query($conn, 'INSERT INTO ...');
if (mysqli_errno($conn) == 1062) {
    echo 'Please enter a different value.';
}

このコードでは、 $conn は MySQL 接続オブジェクトです。 mysqli_errno($conn) と重複キーのエラー コード (1062) を比較することで、エラーが発生したかどうかを判断できます。その場合、ユーザーにカスタム メッセージが表示されます。

良いプログラミング スタイル

コード、特にエラー コードでマジック ナンバーを使用しないことをお勧めします。エラー コード (MYSQLI_CODE_DUPLICATE_KEY など) に定数を割り当てると、コードの読み取りと保守が容易になります。

例:

define('MYSQLI_CODE_DUPLICATE_KEY', 1062);

$result = mysqli_query($conn, 'INSERT INTO ...');
if (mysqli_errno($conn) == MYSQLI_CODE_DUPLICATE_KEY) {
    echo 'Please enter a different value.';
}

以上がPHP for MySQL で重複エントリ エラーを処理する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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