[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Не удается исключить сообщения об ошибках
Владимир55
Сайт построен на системе HOSTCMS, но используются и собственные скрипты. При этом HOSTCMS постоянно пишет в логи и присылает сообщения об ошибках типа
Цитата
"2016-04-22 14:04:44",undefined,"<strong>Undefined error:</strong> mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead в файле /home/db-config.php (строка 15)


Это сообщение относится к строке
$dbcnx = @mysql_connect($dblocation, $dbuser, $dbpasswd);


Поскольку переход на PDO не планируется, то единственный выход - это подавление ненужного сообщения.

При этом ни техподдержка хостинга, ни разработчики HOSTCMS никакого решения предложить не смогли.

Перечитал всю книжку "Обработка ошибок в коде программ php" и тоже ничего не придумал.

Вписал непосредственно перед строкой соединения с базой вот такой код:
error_reporting(0);


И это тоже не сработало!

Как бы все-таки заглушить это сообщение?
twin
Залезть в код и убрать trigger_error. Это явно кастомное сообщение.

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Владимир55
Имеется в виду пройтись поиском по всей папке сайта с целью найти слово "trigger_error" ?
inpost
ini_set('display_errors', 'Off');

А учесть, что это уже устарело и ВО ВСЕХ ВЕРСИЯХ PHP не работает, то не использовать вовсе mysql.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Владимир55
Не могли бы Вы пояснить Вашу мысль?

Цитата
ini_set('display_errors', 'Off');


Это куда вписать?

Цитата
что это уже устарело и ВО ВСЕХ ВЕРСИЯХ PHP не работает

Здесь о чем речь, что устарело и не работает?
inpost
Твою ошибку читай: "The mysql extension is deprecated and will be removed in the future"

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Владимир55
Спасибо, это я понял.

А что делать с этим:
ini_set('display_errors', 'Off');
inpost
Владимир55
Прописать рядом с error_reporting(0);

Если ошибки до сих пор будут выводиться, то надо будет на уровне хостинга в панели управления настраивать.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
twin
Какие ini_set? Вы лог то внимательно почитайте:
Цитата
"2016-04-22 14:04:44",undefined,"<strong>Undefined error:</strong> mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead в файле /home/db-config.php (строка 15)
Это что, Расмус русский язык учит? smile.gif

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
bestxp
Цитата (twin @ 22.04.2016 - 16:29)
Какие ini_set? Вы лог то внимательно почитайте:
Цитата
"2016-04-22 14:04:44",undefined,"<strong>Undefined error:</strong> mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead в файле /home/db-config.php (строка 15)
Это что, Расмус русский язык учит? smile.gif

ошибка системная и генериться самим PHP
потом уже обработчиком ошибок cms или что там у автора превращаеться в то что есть,

если он не хочет видеть то ему E_ALL ~E_DEPRECATED в error_reporting
и готовиться к рефаткрингу
Владимир55
Да, сообщение именно такое, на русском. Я не стал приводить его полностьь, но могу чуть дополнить:
Цитата
"2016-04-22 16:36:37",undefined,"<strong>Undefined error:</strong> mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead в файле /home/db-config.php (строка 16)
Стек вызовов:
Файл:db-config.php, строка 16,
Файл: control.php, строка 31,

Владимир55
Цитата (inpost @ 22.04.2016 - 12:04)
Владимир55
Прописать рядом с error_reporting(0);

Если ошибки до сих пор будут выводиться, то надо будет на уровне хостинга в панели управления настраивать.

В итоге получилось так:
	// отключение сообщений об ошибках
error_reporting(0);
ini_set('display_errors', 'Off');

// Соединяемся с сервером базы данных
$dbcnx = @mysql_connect($dblocation, $dbuser, $dbpasswd);


Ошибки выводятся.

Что там надо сделать на уровне хостинга?
twin
Цитата (bestxp @ 22.04.2016 - 12:37)
потом уже обработчиком ошибок cms или что там у автора превращаеться в то что есть

Так вот именно. Раз не получается отключить на уровне PHP, значит можно выключить на уровне этого обработчика.

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Владимир55
Цитата (twin @ 22.04.2016 - 23:28)
Так вот именно. Раз не получается отключить на уровне PHP, значит можно выключить на уровне этого обработчика.

Спасибо, это удалось.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.