• ベストアンサー

フォームに入力された値のチェック

テキストボックスに数値が入力されていないとエラーメッセージを出したいのですが、どのような方法があるのでしょうか? どなたかご教授よろしく願いします。

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

  • ベストアンサー
  • php504
  • ベストアンサー率42% (926/2160)
回答No.3

数値かどうかならis_numeric関数で判定できます if (is_numeric($_POST['form_name']) === false) { echo "数値を入力してください"; }

elm005
質問者

お礼

問題解決しました。 ありがとうございます。

すると、全ての回答が全文表示されます。

その他の回答 (3)

  • LancerVII
  • ベストアンサー率51% (1060/2054)
回答No.4

こんにちは。 すいません、数値だかをチェックするならNo3さんの条件式を使って下さい。 あとはエラーを表示する関数を用意してあげればいいと思います。

elm005
質問者

お礼

返答遅れてすみません。 たびたびの回答本当にありがとうございました。 No3さんの条件式で解決できました。 本当にありがとうございます。

すると、全ての回答が全文表示されます。
  • LancerVII
  • ベストアンサー率51% (1060/2054)
回答No.2

こんにちは。 こんな感じでしょうか。 <?php  // POSTの内容を変数へ  // 実際は入力されたタグ等を外す処理を入れるのが  // セキュリティ上好ましい。  $val = $_POST['val'];  $val2 = $_POST['val2'];  if ( $val == "" ) {   showError ( "入力項目1は必須項目です。" );   exit;  }  if ( $val2 == "" ) {   showError ( "入力項目2は必須項目です。" );   exit;  }  // 入力チェックに問題が無かった場合の処理  // を書く。  exit;  function showError ( $msg ) {   // HTMLを出力する部分   print "<html>\n";   // 一部省略   // エラー内容を表示する   print "エラー:($msg)";   // HTMLを出力する部分が終わり   print "</html>\n";  } ?> 他にも方法はあると思いますが、こんな感じでいけると思います。

すると、全ての回答が全文表示されます。
  • LancerVII
  • ベストアンサー率51% (1060/2054)
回答No.1

こんにちは。 方法はもちろん、表示方法にもいろいろ手段があります。 サーバ側でチェックを行って、エラー情報をセッションに書き込み、 入力ページへ戻って、その内容を画面に表示する。 または、JavaScriptを併用してalertにエラー情報を表示させる。 単純に、○○が入力されていません。というだけの表示を行い、 「戻る」リンク等で入力画面へ戻す。 他にもまだまだ考え方はあると思います。 やりたい動きは決まっていて、実際の書き方がわからないとかでしたら、 その内容を補足してください。

elm005
質問者

補足

早速の回答ありがとうございます。 言葉が足りなくて申し訳ありません。 処理としては上記のように単純に○○に数値を入力してください。 のようにするつもりです。 実際の書き方がわからないのです。 ご教授よろしくお願いします。

すると、全ての回答が全文表示されます。

関連するQ&A