Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Скрыть ошибки mySql


VasyaAg

Recommended Posts

Здравствуйте. Периодически на хостинге возникают проблемы (все равно уйду на другой скоро, надоели.) из-за чего отваливается база данных и сайт даже по ФТП недоступен.

Однако, при попытке зайти на сайт, вываливаются пара соответствующих ситуации ошибок примерно со следующими заголовками:

Warning: mysql_connect(): Lost connection to MySQL server at 'reading initial communication packet', system error: 111 in......

Warning: mysql_query() expects parameter 2 to be resource, boolean given in......

Error No: 
SELECT * FROM store WHERE REPLACE(`url`, 'www.', '') = '' in .......


Как их можно скрыть? (сервер на apache) Или заменить на какой-либо свой текст или ссылку на другую страницу?

Спасибо.

Надіслати
Поділитися на інших сайтах


в настройках магазина в админ части, есть закладка сервер там есть

Показывать ошибки
Да Нет
Записывать ошибки
Да Нет
 
ставит все нет, и пробуем, должно получится
Надіслати
Поділитися на інших сайтах


Если бы все так просто было. Это все стоит. Речь идет не об отображении ошибок, которые возникают при работе на сайте, а об ошибках, когда его база недоступна.

Сама эта настройка "Показывать ошибки" (`setting` VALUES (13421, 0, 'config', 'config_error_display', '0', 0);) находится в базе данных, каким образом сайт должен её получить, когда база недоступна?

Нужно решение на уровне хостинга, вроде какой-то настройки файлов php.ini или .htaccess.

Надіслати
Поділитися на інших сайтах


пробуйте так:

 

добавьте в .htaccess три строки:

php_flag display_startup_errors off
php_flag display_errors off
php_flag html_errors off

 

А в php.ini две:

display_errors = Off;
error_reporting(0);

 

только это не панацея - ищите нормального хостера

Надіслати
Поділитися на інших сайтах

В оба index.php перед

// Configuration
if (file_exists('config.php')) {
	require_once('config.php');
}  

вставьте:

function mysql_error_handler($errno, $errstr, $errfile, $errline) {
    if(strpos($errstr, 'Lost connection to MySQL server')) {
        die(iconv( "utf-8", "windows-1251", 'Идут технические работы, пожалуйста, зайдите позже...'));
    }
	return true;
}
// Error MySQL Handler
set_error_handler('mysql_error_handler');

  • +1 1
Надіслати
Поділитися на інших сайтах

Гість
Ця тема закрита для публікації повідомлень.
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.