Я обновил PHP с версии 5.3 до PHP 5.6.21 (mod_fcgid) на моем CentOs 6.5 vps.
VPS содержит 4 Prestashop и почти работает, но тележка работает не так, как ожидалось.
Журнал ошибок php содержит эту ошибку:
mod_fcgid: stderr: PHP Warning: Invalid argument supplied for foreach() in Cart.php
Сбой является глобальным для всех размещенных сайтов.
Я изучил файл Cart.php из Prestashop, и проблема заключается в строке foreach.
$result = Db::getInstance()->ExecuteS('Large Query')
$productsIds = array();
$paIds = array();
foreach ($result as $row)
...
Я не вижу здесь ошибок, поэтому ищу, что не так. Я полагаю, что ошибка после обновления PHP связана с ограничениями нового типа или некорректно настроенной настройкой.
Нужна помощь, спасибо.
Решено.
Проблема была связана с базой данных Mysql 5.7 при обновлении с Mysql 5.1.
Ошибка
mod_fcgid: stderr: PHP Warning: Invalid argument supplied for foreach() in...
был прав. Запрос, выполненный prestashop, ничего не дал. Нужно изменить
Режим SQL в my.cnf для
sql-mode=TRADITIONAL