- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PHPのフォームでエラーが出ます)
PHPフォームでエラーが発生する
このQ&Aのポイント
- PHPのフォームでエラーが発生し、Undefined indexエラーメッセージが表示される
- 特定の商品を選択しなかった場合に発生するエラーメッセージを回避したい
- エラーメッセージを回避する方法を教えてください
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
基本的に Notice ってのは、エラーってほどのエラーでもないかなと思います。 動作には支障はないけど、直したほうがいいよ。ってエラーです。 ただ、最近のXAMPPとかでも デフォルトは Notice も表示するようになってるので、今後は上品な書き方しなきゃいけないのかなと思ってます。 スクリプトごとに、Notice を出したくないだけなら、↓を書けばいいです。 error_reporting(E_ALL ^ E_NOTICE); 根本的に出したくないなら、php.ini をいじってください。 [PHP] error_reporting = E_ALL & ~E_NOTICE display_errors = On ↑ をせずに、Noticeを出さないのが、正攻法だと思いますが、Undefined index って何だっけ状態です。 ググったら分かりました。 http://fa3-064.dokidoki.ne.jp/note9.html plan も uq も isset で確認すればいいって事ですかね。 上記、サイトのをパクってみるとこんな感じです。 $plan = isset($_POST['plan']) ? $_POST['plan'] : ""; $uq = isset($_POST['uq']) ? $_POST['uq'] : "";
お礼
bm hiro様 回答、ありがとうございましたっ!! 書いていただいたコードを参考に・・・ セッションを使いたかったので、 セッション変数にPOSTの値を代入して、 それをまた変数に代入して、、、と2段階にしたら できました! 大変助かりました。ありがとうございましたっ!!! ちなみに、こんな感じのコードになりました(^^)↓ $_SESSION["product1"] = ""; if(isset($_POST["product1"])) $_SESSION["product1"] = $_POST["product1"]; $_SESSION["product2"] = ""; if(isset($_POST["product2"])) $_SESSION["product2"] = $_POST["product2"]; $_SESSION["product3"] = ""; if(isset($_POST["product3"])) $_SESSION["product3"] = $_POST["product3"]; if(isset($_POST["submit"])==TRUE){ $select1= $_SESSION["product1"]; $select2= $_SESSION["product2"]; $select3 = $_SESSION["product3"]; //未入力チェック if($select1 == null){ $error .="端末を選択してください<br />"; } if($select2 == null){ $error .="プランを選択してください<br />"; } if($select3 == null){ $error .="UQ Wi-Fiサービスの利用有無を選択してください<br />"; } if($error == null){ $url = "step2.php"; header("Location: ".$url); exit(); } } ?>