2009-08-18 7 views
10

登録時にメールアドレスが重複しないようにしたい。同じメールアドレスが2回受け入れられないように、入力時にテキストボックスを検証するにはどうすればよいですか?ユーザー登録フォームで電子メールアドレスが重複しないようにする方法

+55

「新しいユーザーになる」バッジはどこですか?私たちは最近、これらのものをたくさん手渡しています。人をちょっとゆるめる。英語はおそらく彼の最初の言語ではなく、彼の最初の言語です。少なくとも彼はサインアップするのに気をつけた。 – tvanfosson

+7

@tvanfossonと完全に同意します。エキスパートエクスチェンジで質問する方が良いでしょうか? – Kieron

+8

本当の大きなスタックオーバーフローの問題を指すためのtvanfossonの+1。 – bastianneu

答えて

0

このコードは、フォームが送信されたときにテキストボックスに/に入力されず、既に使用されているかどうかをチェックします。また、そうしないと(ユーザーが入力している間に)それをやりたければ、ajaxを使ってこれを行うことができます。

15

おそらく、データベースのその列の一意性制約(または一意のインデックス)として最も適切に処理されると思います。これにより、データベースの整合性が保証され、エラーメッセージをチェックして、失敗した挿入/更新が原因であるかどうかを判断できます。

1

私は2つの方法を知っています。

方法1:データベースに動的にクエリし、「この電子メールアドレスはすでにサーバーにあります。別のメールボックスを選択してください」というメッセージを表示します。ユーザーがテキストボックスに入力するたびにチェックを行います。

2段階:情報の提出時に、すべての情報が受け入れ可能であることを確認するための検証ルーチンが実行されている場合 - 電子メールアドレスの重複を確認することです。

私は2番目の方法をお勧めします - サーバー負荷を軽減します。

0

データの整合性を保護するためにデータベースのユニークなインデックスを作成することをお勧めします。また、サブミット時に電子メールアドレスをチェックするいくつかのajax呼び出しで検証する必要があります。

関連する問題