• ベストアンサー

PHPでのエラーチェック

現在、会員登録制のサイトを作っています。 そこで必須項目のエラーチェックを行っているのですが、うまくいかない箇所があります。 空白エラー、文字数指定まではできましたが、 ・半角数字 ・半角英数字 ・不正なメールアドレスではないか この3つでいき詰まっています。 サンプルコードをいくつか試しましたが、 「入力前から表示される」「エラーにならず次の確認ページへ移動する」 など、うまくいかないのです。 また、文字の色指定もしたいのです。 空白エラーは<p class="">で指定しているので同様<p class="">を使って色指定していきたいです。 どなたかご教授ください。

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

  • ベストアンサー
  • shimix
  • ベストアンサー率54% (865/1590)
回答No.1

・半角数字 ・半角英数字 preg_match('/[^0-9]/', $str) とか preg_match('/[^0-9A-Za-z]/', $str) とかでチェックすればいいんじゃないでしょうか。 #マルチバイト文字でPOSTされたときに(mb_convert_kanaで) #asciiに変換するかどうかはお好みで。 ・不正なメールアドレスではないか 「正しいメールアドレス」がどういうものか調べていらっしゃいますか?というか、そもそも「php メールアドレスチェック」で検索すればすぐにHitするハズですが(前の2つも同じようなものですけどね)。

ashitano_kaze
質問者

お礼

補足に書いてしまってすみません。 ご指摘いただいたとおりに、半角英数字で正常に動いてくれました! ありがとうございます。

ashitano_kaze
質問者

補足

ありがとうございます! 半角数字は、 <?php if(preg_match("/\D/",$_REQUEST['password'])){ echo '半角数字で入力して下さい</p>'; }?> で正常に動いてくれました! しかし、半角英数字は <?php if(preg_match("/^0-9A-Za-z$/",$_REQUEST['password'])){ echo '半角英数字で入力して下さい'; }?> と表記しても動かないのです。

関連するQ&A