24

error_reportingが0に設定されていても、データベースエラーはまだ画面に出力されています。データベースエラーレポートを無効にするために変更できる設定はありますか?これはCodeIgniterv1.6.x用です

編集:Re:エラーの修正-ええと、はい。エラーを修正したい。訪問者が画面に印刷されたものからではなく、エラーログからエラー通知を受け取ります。それは誰の助けにもならず、私のシステムのセキュリティを傷つけます。

編集2:error_reportingを0に設定しても、CodeIgniterの組み込みエラーログクラスがエラーログに書き込むことには影響しません。

4

4 に答える 4

65

答えを見つけました:

config/database.php:

// ['db_debug'] TRUE/FALSE - Whether database errors should be displayed.

それで:

$db['default']['db_debug'] = FALSE;

...無効にする必要があります。

于 2008-11-13T23:30:48.120 に答える
12

Ian の回答に加えて、エラー メッセージを一時的に無効にするには:

$db_debug = $this->db->db_debug;
$this->db->db_debug = false;

// Do your sketchy stuff here

$this->db->db_debug = $db_debug;
于 2013-03-08T11:03:17.290 に答える
6
  • error_reporting を 0 に変更する必要はありません。これにより、エラーがログに記録されなくなります。

  • 代わりに、display_errors を 0 に変更する必要があります

ただし、error_reporting が実際には 0 であると仮定すると、エラーが表示される理由は説明できません。フレームワークがこれらのエラーを処理する可能性があります。

于 2008-11-13T22:51:58.307 に答える
3

アプリケーションディレクトリの下にある/errors/db_error.phpファイルを編集できます。これはDBエラー用に含まれているテンプレートです。

ただし、実際にはエラーを修正する必要があります。

于 2008-11-13T22:54:39.393 に答える