気軽に読めるPHP入門書・PHPスクリプトが動かないときの原因と対策などを紹介します。

  1. PHPエラーの原因と対策
  2. 101 view

「Notice: Undefined index」と表示されるとき

$_POSTや$_GET(フォーム入力値やURLパラメータ)から値を受け取る処理でよく発生します。原因は、そのスクリプトへの初回アクセス時と2回目以降のアクセスで処理を切り分けていないことが考えられます。たとえば、「送信する」ボタンをクリックした後にフォーム入力値を受け取るスクリプトの場合、そのスクリプトに最初にアクセスしたときは$_POSTには何も入っていないので、このエラーメッセージが表示されます。

<?php
echo $_POST["test"];
?>

対処方法として、「$_POST[“test”]に値が入っているときは…」という条件を設定する方法があります。

<?php
if (isset($_POST["test"])) {
    echo $_POST["test"];
}
?>

これにより、初回アクセス時は$_POSTを参照しないので、エラーメッセージは表示されなくなります。

このエラーメッセージはNoticeレベル(注意)なので、とりあえずの対処でエラーメッセージを非表示にする方法もあります。

【関連記事】「Notice: Undefined variable:」と表示されるとき

定番のエラーメッセージを予習したい方におすすめの本

「Notice: Undefined index」の他にも定番のエラーメッセージはいくつかあります。そんな定番エラーメッセージを予習しておきたい方にはこの本をおすすめします(私が書いた本ですが)。ゼロから書けば早く完成できるスクリプトでも「なぜエラーになるのか?」「どこが間違っているのか?」と聞かれると意外とすぐに答えられなかったりします。基礎力のチェックも兼ねて暇なときに読んでみてください。
「PHP「直す力」養成ドリル」について詳しくはこちら

PHPエラーの原因と対策の最近記事

  1. PHPの関数や変数の前にあるアットマークの意味は?

  2. 「http:// wrapper is disabled in the server co…

  3. php.iniの場所

  4. 「Warning: array_key_exists()」と表示されるとき

  5. 「Warning: A non-numeric value encountered」と表示…

関連記事

PAGE TOP