Как получить подробный отчет об ошибке при сбое сценария php-mysql? - PullRequest
1 голос
/ 23 мая 2011

Как получить подробное описание ошибки во время запуска сценария php-mysql?

У меня есть следующие операторы, где скрипт завершается ошибкой и отображает пользовательское сообщение об ошибке - содержимое «или умереть».

Я хочу получить фактическую ошибку из MySQL (вместо упомянутой мной пользовательской ошибки), которая дала бы лучшее представление о сценарии - будь то проблема с базой данных или проблема с подключением к серверу и т. Д.

это код, который у меня есть, где мне нужно улучшить сообщение об ошибке

$query = "SELECT * FROM table_name";
$result = mysqli_query($db_conn, $query) 
  or die('Connected to database, but querying failed');

спасибо!

Ответы [ 4 ]

4 голосов
/ 23 мая 2011

Проверить mysql_error функция.

1 голос
/ 23 мая 2011

Загляните на страницу руководства для mysqli_error .В разделе «Процедурный стиль» вы найдете полный пример, который показывает, как настроить соединение с базой данных и выполнить запрос к базе данных, оба шага с обработкой ошибок.

Если вы хотите получить подробную информацию об ошибках из ваших сценариев, выможет поставить строки

error_reporting( E_ALL );
ini_set('log_errors', true);
ini_set('error_log', '/tmp/php-errors.log');

в начале вашего кода.Таким образом, все ошибки, поступающие от PHP, будут записаны в файл журнала.Убедитесь, что путь к файлу журнала существует (/tmp является только примером) и доступен для записи веб-сервером, в противном случае ошибки будут игнорироваться.

В качестве примечания: пока "or die() "шаблон хорош для небольших примеров, его не следует использовать в рабочем коде.

0 голосов
/ 23 мая 2011

вы можете вставить запрос на страницу запроса в phpmyadmin, если вы его используете.Но это не скажет вам, если ошибки с переменными

0 голосов
/ 23 мая 2011

Я предпочитаю использовать PDO, а PDO создает исключение.

...