ホームページ  >  記事  >  php教程  >  未定義のインデックス: PHP での未定義のインデックス プロンプトの解決策

未定義のインデックス: PHP での未定義のインデックス プロンプトの解決策

WBOY
WBOYオリジナル
2016-06-21 08:51:241319ブラウズ

フォームからデータ POST を受信するときに、次のような未定義インデックス エラーがよく発生します: $act=$_POST['action'];
上記のコードを使用すると、常にプロンプ​​トが表示されます
注意: 未定義インデックス: D での動作: testpost.php 20 行目
さらに、時々
通知: 未定義の変数: 送信... などのプロンプトが表示されることがあります

上記は PHP プロンプトではありませんが、エラーが報告された場合は、 PHP 自体は事前に変数を宣言しなくても直接使用できますが、宣言されていない変数についてはプロンプトが表示されます。通常、正式な Web サイトではプロンプトがオフになり、エラー メッセージもオフになります。

解決策:
1) if(@$_GET['action']=='save') のように変数の前に @ を追加します { ...
2) 変更しますphp .ini のエラー設定でのエラー表示モード: error_reporting = E_ALL を
error_reporting = E_ALL& ~E_NOTICE
に変更します。 変更を有効にするには、変更後に APCHE サーバーを再起動します。


----------------------------------------------------- -------------------------
[PHP コア エラー]
error_reporting = E_ALL & ~E_NOTICE
; エラー報告レベルはビットフィールドの重ね合わせです。 E_ALL E_STRICT
; 1 E_ERROR 致命的な実行時エラー
; )
; 4 E_PARSE コンパイル時の解析エラー
; 8 E_NOTICE 実行時のリマインダー (多くの場合、意図的なものである可能性があります)
; 16 E_CORE_ERROR PHP 起動初期化プロセス中の致命的なエラー
; PHP 起動初期化プロセス (致命的でないエラー)
; 64 E_COMPILE_ERROR コンパイル時の致命的なエラー
; 128 E_COMPILE_WARNING コンパイル時の警告 (致命的なエラーではない)
; 256 E_USER_ERROR ユーザー定義の致命的なエラー
; 512 E_USER_WARNING ユーザー定義の警告 (致命的ではないエラー)
; 1024 E_USER_NOTICE ユーザー定義のリマインダー (多くの場合、意図的なもの)
; 2048 E_STRICT エンコーディングの標準化に関する警告 (上位互換性のための変更方法の提案)
; 4096 E_RECOVERABLE_ERROR 致命的に近い実行時エラー。捕捉されなかった場合、E_ERROR
; 6143 E_ALL E_STRICT を除くすべてのエラー (すべてを含む)。 この記事へのリンク http://www.cxybl.com/html/wlbc/Php/20120720/31927.html



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。