display_errors в ini_set не работает

Владимир Соколов
Владимир Соколов
  • Сообщений: 31
  • Последний визит: 25 марта 2025 в 21:57
У меня проблема с ini_set('display_errors', 'off').

Чтобы быстро вам разобраться, у меня есть два файла в одной папке:

1) «php.ini», где установлено «display_errors = on». 2) «iniTest.php», который имеет следующий код:
ini_set('display_errors', 'off');
 
$conn = mysql_connect('localhost','excamplehidden','examplehidden') or trigger_error("SQL", E_USER_ERROR);
$db = mysql_select_db('examplehidden',$conn) or trigger_error("SQL", E_USER_ERROR);
 
mysql_query("SELECT * FROM `FakeTable`") OR die(mysql_error());
 
ini_set('display_errors', 'on');

Когда я запускаю эту страницу в браузере, я все равно получаю:

«Таблица examplehidden.FakeTable не существует»

Где я ничего не ожидаю, потому что хочу скрыть ошибки.

Что я делаю не так?
Редактировалось: 1 раз (Последний: 19 января 2025 в 09:21)
DST Global
DST Global
  • Сообщений: 19
  • Последний визит: 7 мая 2025 в 18:07
Эта ошибка у вас die команда. Вы не можете подавить die отключив ошибки, поскольку вы явно повторяете mysql_error на экран перед выходом.

Вы должны использовать trigger_error так же, как и ваш mysql_select_db строку выше, чтобы исправить это:
mysql_query("SELECT * FROM `FakeTable`") OR trigger_error(mysql_error(), E_USER_ERROR);


Авторизуйтесь, чтобы писать на форуме.