2

suse11.0 で php を使用している私の問題は、間違った構文またはクエリを入力すると、エラーが表示されず、この状況で表示される空白のページのみが表示されることです。

ありがとう

4

7 に答える 7

8

構成error_reporting(も参照) し、エラーの表示を有効にする (display_errorsまたはini_setを参照) -- 少なくとも開発マシンでは

php.ini ファイルで、次を使用します。

error_reporting = E_ALL | E_STRICT
display_errors = On
html_errors = On

または、PHP コードで:

error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', 'On');

エラー/例外が発生した場合に適切なスタックトレースを取得するために、開発ボックスにXdebugをインストールすることもできます。


もちろん、運用マシンでは、おそらくエラーを表示したくないでしょう。そのため、環境に応じて構成する必要があります;-)

于 2009-08-07T19:45:51.767 に答える
3

ほとんどの場合display_errors、php.ini で無効になっています。

これは製品サーバーでは良いことであり、開発システムは基本的に使用できなくなります。

開発システムの場合、おそらく次の行のいずれかを php.ini ファイルに追加する必要があります。

error_reporting  =  E_ALL & ~E_NOTICE

また

error_reporting  =  E_ALL
于 2009-08-07T19:44:20.817 に答える
2

次の内容で、たとえば test.php のファイルを作成します。

<?php
phpinfo();
?>

ブラウザで実行し、php.ini ファイルの場所を検索します。エラー報告と php.ini のエラー表示を有効にするよりも。

于 2009-08-07T19:47:35.443 に答える
0

他の回答はあなたの質問に答えますが、スクリプトがユーザーにわかりやすいエラー メッセージを表示するように、独自のエラー チェック ルーチン (またはコード) を提供することが最善であることを指摘したかっただけです。何かのようなもの

$result=@mysql_query($some_query);
if(!$result){
   if($debugging==TRUE){
       echo($some_query.'<br>'.mysql_error());//shows error in debugging mode
    }
   else{
     log_error()// error logging function
      die( 'there was a problem with your request the problem has been logged and we are working on it');//or something like that

   }
}
//no error
more code
于 2009-08-07T20:06:50.337 に答える
0

php.ini で error_reporting がオンになっていることを確認してください

error_reporting  =  E_ALL | E_STRICT
于 2009-08-07T19:45:10.130 に答える
0

php.ini ファイルで display_errors がオンになっていることを確認し、error_reporting を E_ALL に設定します。

于 2009-08-07T19:45:11.190 に答える
0

スクリプトを次のように開始します。

<?php
    ini_set ('display_errors', 1);
    error_reporting (E_ALL | E_STRICT);
?>
于 2009-08-07T19:45:40.283 に答える