How to turn off mysql errors from being displayed

2020-05-21 19:03发布

Even though error_reporting is set to 0, database errors are still being printed to screen. Is there a setting somewhere I can change to disable database error reporting? This is for CodeIgniter v1.6.x

EDIT: Re: Fixing errors - Um, yes. I want to fix the errors. I get error notices from my error log, not from what my visitors see printed to their screen. That helps no one, and hurts my system's security.

EDIT 2: Setting error_reporting to 0 does not affect CodeIgniter's built-in error logging class from writing to the error log.

4条回答
Luminary・发光体
2楼-- · 2020-05-21 19:45
  • You don't want to change error_reporting to 0, because that will also suppress errors from being logged.

  • instead you should change display_errors to 0

This doesn't explain why you are getting errors displayed though, assuming error_reporting is actually 0. Maybe the framework handles these errors

查看更多
【Aperson】
3楼-- · 2020-05-21 19:50

Found the answer:

In config/database.php:

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

so:

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

... should disable.

查看更多
Animai°情兽
4楼-- · 2020-05-21 19:56

In addition to Ian's answer, to temporarily disable the error messages:

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

// Do your sketchy stuff here

$this->db->db_debug = $db_debug;
查看更多
smile是对你的礼貌
5楼-- · 2020-05-21 19:56

You can edit the /errors/db_error.php file under the application directory - that is the template included for DB errors.

However, you should really just fix the errors.

查看更多
登录 后发表回答