20

重複の可能性:
HTML ではなく生のテキストとして例外をダンプするように PHP に指示するにはどうすればよいですか?

C# と php を使用してログイン スクリプトを作成しようとしています。1 クリック インストールとして販売する予定なので、エラー防止が必要です。私は意図的にセットアップを間違えようとしていますが、phpスクリプトに間違いがあると、文字列出力が必要なときにHTMLブロックが出力され、エラーが発生します(画像を参照)。

私が使用しているコードはこちら

// We will now set up our MySQL database login. The values should be self-explanatory. 
$sqlhost = "localhost";
$sqlusername = "unity";
$sqlpassword = "mypass123";

//we will now connect to our database
$sqlcon = mysql_connect($sqlhost, $sqlusername, $sqlpassword) or die("Could not connect to database: " . mysql_error());

すべての情報を取得すると、正常に動作し、残りのコードはエラーなしで実行されます。しかし、パスワードが間違っているか、ユーザーがアクセスできない場合、このエラーが発生します

回避しようとしているエラー

このページから情報を取得しましたが、正しく表示するにはプラン テキストとして送信する必要があります。これが意味することは、etc のような HTML タグは<div>, <br>, <a>,一般的にテキスト出力の見栄えを悪くするということです。エラー自体がログに記録されるため、ページの下部にテキストを表示するだけです。2回ログに記録する必要はありませんし、派手にフォーマットする必要もありません。ユーザーにエラーが発生した場合に短いテキストを送信して、修正を順を追って説明できるように、読みやすいテキストでそれが必要です。

4

1 に答える 1

38

PHP がプレーン テキスト エラーを表示するか、HTML エラーを表示するかは、php.ini の設定によって異なります。

html_errors boolean

エラー メッセージの HTML タグをオフにします。HTML エラーの新しい形式では、クリック可能なメッセージが生成され、エラーまたはエラーの原因となった機能を説明するページにユーザーを誘導します。これらの参照は、docref_root と docref_ext の影響を受けます。

設定はとして設定できPHP_INI_ALLます。これは、スクリプトを含め、どこでも設定できることを意味します。したがって、htmlエラーを無効にするには

ini_set('html_errors', false);

スクリプトの先頭に。

于 2012-06-03T10:06:00.173 に答える