Проверьте журналы консоли сервера в службе azure app [duplicate]

Это сообщение об ошибке отображается при возникновении ошибки в запросе, которая привела к сбою. Он проявится при использовании:

  • mysql_fetch_array / mysqli_fetch_array()
  • mysql_fetch_assoc() / mysqli_fetch_assoc()
  • mysql_num_rows() / mysqli_num_rows()

Примечание. Эта ошибка вызывает не , если на ваш запрос не влияет строка. Только запрос с недопустимым синтаксисом генерирует эту ошибку.

Шаги устранения неполадок

  • Убедитесь, что ваш сервер разработки настроен на отображение всех ошибок. Вы можете сделать это, разместив это в верхней части своих файлов или в вашем файле конфигурации: error_reporting(-1); . Если у вас есть какие-либо синтаксические ошибки, это укажет вам.
  • Используйте mysql_error() . mysql_error() сообщит о любых ошибках MySQL, возникающих при выполнении вашего запроса. Пример использования:
    mysql_connect($host, $username, $password) or die("cannot connect"); 
    mysql_select_db($db_name) or die("cannot select DB");
    
    $sql = "SELECT * FROM table_name";
    $result = mysql_query($sql);
    
    if (false === $result) {
        echo mysql_error();
    }
    
  • Запустите запрос из командной строки MySQL или с помощью инструмента, такого как phpMyAdmin . Если у вас есть синтаксическая ошибка в вашем запросе, это скажет вам, что это такое.
  • Убедитесь, что ваши кавычки верны. Отсутствие цитаты вокруг запроса или значения может привести к сбою запроса.
  • Убедитесь, что вы избегаете своих значений. Цитаты в вашем запросе могут привести к сбою запроса (а также оставить вас открытым для SQL-инъекций). Используйте mysql_real_escape_string() , чтобы избежать ввода.
  • Убедитесь, что вы не смешиваете функции mysqli_* и mysql_*. Они не то же самое и не могут использоваться вместе.

Другие советы

mysql_* функции не должны для нового кода. Они больше не поддерживаются, и сообщество приступило к процессу осушки . Вместо этого вы должны узнать о подготовленных операторах и использовать либо PDO , либо MySQLi . Если вы не можете решить, эта статья поможет выбрать. Если вы хотите узнать, вот хороший учебник PDO .

16
задан davidism 26 October 2015 в 03:40
поделиться

1 ответ

Вы можете установить переменную среды FLASK_DEBUG=1 при запуске приложения в качестве службы.

Upstart (по умолчанию в Ubuntu 14.04)

# /etc/init/uwsgiapp.conf
env FLASK_DEBUG=1
script
  // upstart exec section
end script

Systemd (по умолчанию в Ubuntu 16.04). , Arch)

[Service]
Environment="FLASK_DEBUG=1"
# other parts

Supervisord

[program:flask]
environment=FLASK_DEBUG=1

Обычно журналы будут где-то в /var/log/.

23
ответ дан davidism 3 September 2018 в 08:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: