Sql calc found rows не всегда работает правильно
Материал из Umicms
Проблема
Использование в классе sql_calc_found_rows и последующий вызов
$sql = "SELECT FOUND_ROWS()";
Работает не всегда правильно.
Если %total% возвращает 0 или 1, а элементов или объектов явно должно быть больше, значит существует проблема в настройках PHP.
Причиной всему - ошибка в модуле php_mysql.so (BUG#33021), которая наблюдается при включенной опции
mysql.trace_mode=true
Решение проблемы
Необходимо изменить значение переменной в файле php.ini
Самый надежный вариант - это отредактировать файл и перезапустить вебсервер (если PHP установлен)
В коде PHP в mysql.php добавить строчку
ini_set('mysql.trace_mode', false);
Второй вариант: добавить инструкцию в .htaccess
php_flag mysql.trace_mode 0