• ベストアンサー

PHP文法エラーについて

恐れ入ります。 下記PHP文法で、ブラウザに次のエラーが表示されます。「Notice: Undefined variable: _FORM in C:\xampp\htdocs\Step2Kadai\input.php on line 3」 該当PHP命令文は下記です。 <?php session_start(); $_SESSION['address'] = $_FORM['address']; ?> <!DOCTYPE html> <html> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>MF-02 input</title> <meta charset="utf-8"> </head> <body> <h1>MF-02 input</h1> <form action="mf_form.php" method="post"> <p>アドレス: <input type="email" name="address"> <input type="submit" value="送信"></p> </form> </form> </body> </html> 以上。エラーメッセージのline 3は、$_SESSION['address'] = $_FORM['address']; のところです。 ご指摘をよろしくお願い致します。

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

  • ベストアンサー
  • t_ohta
  • ベストアンサー率38% (5238/13705)
回答No.1

$_FORM って変数が定義されてないのに使われているとPHPが怒ってます。 $_FORM['address'] の値を取り出すためには、予め $_FORM['address'] 変数(配列)に値を入れておく必要があります。 まぁ Notice レベルのエラーなので、実際には $_SESSION['address'] に null を入れて処理を継続してくれますが、変数を使う場合は予め定義をするようにしましょう。

crainsoft716
質問者

お礼

あ、そうなんですか。$_FORM変数が定義されていないから、エラーになっているのですか。パソコン教室で受講していた時に、$_FORM変数に?を入れてました。それが、仮の定数なのですね。そのようにしましたら、今度は又別のエラーが発生しました。又、色々調べて、それでも、わからなかったら、又、ここで質問させて頂きます。皆様、よろしくお願い致します。 今回は、t_ohtaさん、ありがとうございました。お礼に、ビットコインを贈らせて頂きます。

その他の回答 (1)

noname#246457
noname#246457
回答No.2

こんばんは。 * <form action="mf_form.php" method="post"> の点において、mf_form.phpにPOSTアクセスを行っているので、 $_POST['address']に該当データが格納されているかと思います。 補足ですが、methodがgetであれば$_GET['address']に格納されています。

参考URL:
http://php.net/manual/ja/reserved.variables.post.php