PHP/MySQL アプリケーションで重複エントリ エラーを処理するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-11-11 14:35:03
オリジナル
849 人が閲覧しました

How to Handle Duplicate Entry Errors in PHP/MySQL Applications?

PHP/MySQL アプリケーションでの重複エントリ エラーの処理

MySQL データベースと対話する PHP アプリケーションでユーザー入力を処理する場合、重複したエントリを適切に処理するために重要です。よくある問題の 1 つは、ユーザーが主キーとしてすでに存在する値を入力すると、MySQL エラー「キー 1 のエントリ '入力された値' が重複しています。」

MySQL エラー コードを次のように変換することです。 PHP メッセージ

重複エントリが発生したときのユーザー エクスペリエンスをカスタマイズするには、特定の MySQL エラー コードを PHP でわかりやすいメッセージに変換する必要があります。これは、MySQL から返されたエラー コードを確認し、適切なアクションを実行することで実現できます。

mysqli_errno() 関数の使用

PHP の mysqli_errno() 関数は次のように実行できます。最後の MySQL クエリに関連付けられた数値エラー コードを取得するために使用されます。重複エントリのエラー コードは 1062 であるため、この特定のエラーを検出するには、次のコードを使用できます:

mysqli_query('INSERT INTO ...');
if (mysqli_errno() == 1062) {
    print 'Please enter a different value.';
}
ログイン後にコピー

Good Programming Practices

次のコードを使用することをお勧めします。コード内でマジックナンバー (1062 など) を使用することは避けてください。代わりに、エラー コードの定数を定義して、長期的にはコードの可読性と保守性を確保することが有益です。例:

define('MYSQLI_CODE_DUPLICATE_KEY', 1062);

...

if (mysqli_errno() == MYSQLI_CODE_DUPLICATE_KEY) {
    print 'Please enter a different value.';
}
ログイン後にコピー

この手法を実装することで、開発者は重複エントリが見つかった場合に、標準の MySQL エラー メッセージがユーザーに表示されないようにして、よりユーザー フレンドリーなエクスペリエンスを提供できます。

以上がPHP/MySQL アプリケーションで重複エントリ エラーを処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート