メールアドレスチェックの正確な処理方法は?

このQ&Aのポイント
  • 現在、JAVA+DOM+XML+XSLで携帯のサイトを作成しており、アンケート画面にメールアドレスを入力するテキストボックスがあります。しかし、メールアドレスの形式が異なる機種があるため、正確にチェックすることができません。クライアントの機種情報を取得しても、PCのメールアドレスが入力される可能性もあるため困っています。
  • JAVA+DOM+XML+XSLで携帯のサイトを作成していて、アンケート画面でメールアドレスを入力するテキストボックスがあります。しかし、機種によってメールアドレスの形式が異なるため、正確にチェックできません。クライアントの機種情報を取得しても、PCのメールアドレスが入力される可能性があるため、どうしたら良いか困っています。
  • 携帯のサイトをJAVA+DOM+XML+XSLで作成しており、アンケート画面にメールアドレスを入力するテキストボックスがあります。しかし、機種によってメールアドレスの形式が異なるため、正確にチェックすることができません。クライアントの機種情報を取得しても、PCのメールアドレスが入力される可能性もあるため、解決策に悩んでいます。
回答を見る
  • ベストアンサー

メールアドレスチェック

現在、JAVA+DOM+XML+XSLで携帯のサイトを作成しております。 アンケートの画面に、メールアドレスを入力するテキストボックスがあります。 アンケートに回答して頂き、SUBMITボタンが押下されたら、入力値のチェックを行っています。 しかし、メールアドレスの形式が、PC、iモード、Jsky、EZwebとで 異なる部分がある為、正確にチェック処理ができないような気がしています。 単純にクライアントの機種情報(PCなのか、iモードなのか等)を 取得してチェックしようにも、クライアントがPCでも入力される メールアドレスがPCの物とは限らないので、どうしたらよいか困っています。 何か良い方法はないでしょうか?

  • Java
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • freshjive
  • ベストアンサー率43% (14/32)
回答No.1

メールアドレスとして設定できる文字は、プロバイダによって 異なります。?を設定できるところもあれば、+もOKのプロバイダ も存在します。 イントラネットのような限られた環境の中であれば厳密にチェックする ことができる場合もありますが、インターネットとなれば不可能です。 チェックするのであれば、 ・半角であること ・文字列の中に'@'は一つであること くらいしかできないですよ。 以前私が携わったwebのシステムでは、あえて英数字と./_@以外の 文字はメールアドレスに設定できないように制限をかけ、エラーと なってしまうアドレスの人からはメールなどで連絡してもらい、 運用対処しました。 理由は、チェックをルーズにした結果、誤入力が増大したからです。

forester
質問者

お礼

ご回答ありがとうございます。 経験して見える方からのご意見なので、とても参考になりました。 現状では、半角英数と./@のみを許可する仕組みになっておりますので、 このまま運用していきたいと思います、 ありがとうございました。

関連するQ&A

  • phpでのメールアドレスの2重チェックをする方法

    問い合わせフォームを作成しているのですが、なんとかデータの受け渡しと入力がなかった場合の「必ず入力して下さい」はできました。 そこで、問い合わせフォームにあるメールアドレスと確認用メールアドレスを、submit後に2重チェックしたいのですが、どうしたら良いのでしょうか? メールアドレスと確認用メールアドレスが違うなら「確認用のメールアドレスと一致しておりません」と表記し、合っているなら入力したアドレスを表記したいです。 submit後のphpファイルに、なにか特別なコードを入力する必要があると思うのですが、どのようなコードか教えて下さい。ifとelseを使うのでしょうか? 宜しくお願いします。

    • ベストアンサー
    • PHP
  • JavaScript でメールアドレスのチェックをするには・・・?

    入力フォームで正しいメールアドレスが入力されたのかを確認するため、以下のようなJavaScriptを記述しましたが、動作しません。 関数FormCheckは動作するのですが、関数Checkは動作しません。 現状では、メールアドレスを入力する欄に「www」とだけ入力しても チェックされないので、その他の入力項目がきちんと入力できていれば メール送信されてしまいます。 どのようにすればこのCheck関数が動作するのかどなたか教えていただけないでしょうか?よろしくお願いします。 --------------------Java Script 部分--------------------------- <script language="JavaScript"> <!-- //必須項目のチェック function FormCheck(Form) { Error = new Array(); i = 0; // 氏名の入力チェック if ((Form["name"]) && (Form["name"].value == "")) { Error[i] = "氏名は必須項目です。"; i++; } // メールアドレスの入力チェック if ((Form["email"]) && (Form["email"].value == "")) { Error[i] = "メールアドレスは必須項目です。"; i++; } // 質問したい支店の選択チェック if ((Form["address"]) && (Form["address"][0].selected == true)) { Error[i] = "質問したい支店は必須項目です。"; i++; } // 未入力があればアラート if (Error.length > 0) { ErrorText = Error.join("\n"); alert ("未入力項目があるので送信できません。\n\n"+ErrorText); return false; } } // --> <!-- //メールアドレスチェック var mail; function Check(){ mail = document.myform.email1.value; if(!mail.match(/.*@.*\..*/i)){ alert("メールアドレスが不正です。"); } } // --> </script> --------------------HTML 部分----------------------------------- <body> <table width="419" height="453"> <tr> <td width="732"> <form action="./cgi/test/sendmail.cgi" name="myform" method="POST" target="_self" onSubmit="return FormCheck(this);Check()"> <table width="481"> <!--氏名を入力 --> <tr> <td><strong>氏名</strong></td> <td><input type="text" name="name" size="30" maxlength="50"></td> </tr> <!--メールアドレスを入力 --> <tr> <td><strong>メールアドレス</strong></td> <td><input type="text" name="email" size="50" maxlength="60"></td> </tr> <!--支店選択 --> <tr> <td><strong>質問したい支店</strong></td> <td> <select name="address"> <option value="" selected></option> <option value="aaa@hoemail.com">A支店</option> <option value="bbb@hoemail.com">B支店</option> <option value="ccc@hoemail.com">C支店</option> </select> </td> </tr> </table> <!--送信・キャンセルボタン --> <center> <table> <tr> <td><input type="submit" name="submit" value="送 信"></td> <td><input type="reset" name="reset" value="キャンセル"></td> </tr> </table> </center> </form> </td> </tr> </table>

  • 2重でメール入力チェックをしたいのですが・・・

    只今、アンケートを実施しようと考えております。そこで、アンケート内容の未入力チェックとメールアドレスの再入力チェックを行いたいと思っております。メールアドレスを2回とも一致しているか確認したいのですが、思うように動きません。どなたか教えて頂けませんでしょうか。 ちなみに、1回目は通しで入力、2回目は@の前と後ろを分けて入力させたいのですが・・・。

  • 携帯の機種シェア情報

    携帯コンテンツの製作をしており、 現在、iモードのみ実機を所有しています。 エミュレータだとやはり限界もあるので、 EZwebとJskyでも、実機にて確認しようと思います。 一番シェアの大きい機種を所有するのがいいと思うのですが、 EZwebとJskyの機種のシェア情報は どこで知ることが出来るでしょうか? よろしくお願いいたします。

  • メールアドレスの存在確認はできるのでしょうか

    アンケートフォームを設置しており、アンケートに回答してもらうと「ありがとうございます」というメールを返信しております。 メールアドレスは、回答の必須項目としていて、英数字などの基本的なチェックはしていますが、やはり入力を誤ってエラーとなる方がおられます。 登録後に必ずメールを送りたいとなった場合、メールアドレスが存在するものである必要が出ると思うのですが、メールアドレスの存在チェックはできるものなのでしょうか?

    • ベストアンサー
    • PHP
  • 携帯メールアドレスチェックをしたい

    携帯のメールアドレスのみを入力可能なようなチェック機能を作成したいのです。 ドメイン名でチェックするのが現実的だと思いますが、どのようなドメイン名が携帯のメールアドレスであるかがわかりません。 よろしくお願いいたします。

  • iモードで自宅のパソコンに来たメールチェックはできる?

    パソコンで使用しているメールアドレス宛に来たメールを、iモードでチェックしたいんですが出来るんでしょうか?たしかにiモードでは専用アドレスを取得出来るようなんですが、同じサイトに接続するのに別個のアドレスでメールを送受信するのはややこしいです。iモードとパソコンで同じアドレスを使うことは可能でしょうか?オークションなどで連絡を取り合いたい人からのメールをチェックしたり、その人に返事を出したりするのに、連絡先(相手が送信してくるアドレス)と、私が返事を出す時に使うアドレスが違うのは混乱の素だと。 用は、iモードで「~@docomo.・・・」以外のアドレスが使いたいんです。そんなサービスや設定をご存知の方、どうかこの都合のいい質問にお答え下さい。

  • Javascriptで必須項目とメールアドレスチェックを同時に行いたいのですが…

    Javascriptで入力フォームの必須項目とメールアドレスのチェックを行いたいため、下記の様に設定したのですが、メールアドレスが入っているか確認後、メールアドレスのチェックを行うにはどのように書けばいいでしょうか?(現在は、Emailは必ず入力して下さい。Emailアドレスをご確認下さい。のalertが同時にでてしまいます。)宜しくお願いします。 <script type="text/javascript"> <!-- function FormCheck(Form) { Error = new Array(); i = 0; // 選択リストのチェック if ((Form["naiyou"]) && (Form["naiyou"][0].selected == true)) { Error[i] = "お問合せ内容を選択して下さい。"; i++; } // 名前の入力チェック if ((Form["name"]) && (Form["name"].value == "")) { Error[i] = "お名前は必ず入力して下さい。"; i++; } // emailの入力チェック if ((Form["email"]) && (Form["email"].value == "")){ Error[i] = "Emailは必ず入力して下さい。"; i++; } if ((Form["email"]) && (!Form["email"].value.match(/^[A-Za-z0-9]+[\w-]+@[\w\.-]+\.\w{2,}$/))){ Error[i] = "Emailアドレスをご確認下さい。"; i++; } // 未入力があればアラート if (Error.length > 0) { ErrorText = Error.join("\n"); alert (ErrorText); return false; } } // --> </script>

  • 入力メールアドレスの妥当性チェック

    フォームから入力された、 メールアドレスの妥当性のチェックを行いたいのですが、 「日本語であるか否か」のチェックを行うことはできないのでしょうか? アルファベット/数字だけのチェックであれば問題ないのですが、 メールには _.- などの文字も含まれているので、 メールアドレスとして妥当かどうか、正確なチェック方法、 正規表現方法はないものかどうか、教えてください。 他のサンプルソースで拾った if ( ereg("^[^@]+@[^.]+\..+", $mail) ) { $status = 1; //メールアドレスっぽい } else { $status = 0; //メールアドレスではなさそう } という記述ですと、日本語、たとえば あいうえお@mail.goo.ne.jp でもOKになってしまいます。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • ラジオボタンでのメールアドレスの必須チェックをするには…?

    こんにちは。いつもお世話になります。 JavaScriptの事で、色々検索して回ったのですが、ピッタリのものが無く。。(>_<)ヽ もしどなたかわかる方がいらっしゃいましたら、お願い致します。 ○不要 ○希望 メールアドレス:「(テキストボックス)」 例えばこのような内容のフォームで、「不要」のラジオボタンがチェックされていた場合は、 メールアドレスは入力せずに送信が出来、「希望」のラジオボタンがチェックされていた場合は、 メールアドレスが入力されていない場合は「メールアドレスを入力して下さい」といった アラートを出すようなJavaScriptは、どのようにすれば宜しいでしょうか。。 どうぞよろしくお願いいたします。(_ _*)

専門家に質問してみよう