suse11.0 で php を使用している私の問題は、間違った構文またはクエリを入力すると、エラーが表示されず、この状況で表示される空白のページのみが表示されることです。
ありがとう
構成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をインストールすることもできます。
もちろん、運用マシンでは、おそらくエラーを表示したくないでしょう。そのため、環境に応じて構成する必要があります;-)
ほとんどの場合display_errors
、php.ini で無効になっています。
これは製品サーバーでは良いことであり、開発システムは基本的に使用できなくなります。
開発システムの場合、おそらく次の行のいずれかを php.ini ファイルに追加する必要があります。
error_reporting = E_ALL & ~E_NOTICE
また
error_reporting = E_ALL
次の内容で、たとえば test.php のファイルを作成します。
<?php
phpinfo();
?>
ブラウザで実行し、php.ini ファイルの場所を検索します。エラー報告と php.ini のエラー表示を有効にするよりも。
他の回答はあなたの質問に答えますが、スクリプトがユーザーにわかりやすいエラー メッセージを表示するように、独自のエラー チェック ルーチン (またはコード) を提供することが最善であることを指摘したかっただけです。何かのようなもの
$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
php.ini で error_reporting がオンになっていることを確認してください
error_reporting = E_ALL | E_STRICT
php.ini ファイルで display_errors がオンになっていることを確認し、error_reporting を E_ALL に設定します。
スクリプトを次のように開始します。
<?php
ini_set ('display_errors', 1);
error_reporting (E_ALL | E_STRICT);
?>