Вот часть моего запроса:
WHERE CASE $range WHEN 'ALL' THEN TRUE ELSE $this->table_alias.date_time > unix_timestamp(DATE_SUB(now(), INTERVAL 1 $range)) END
Отмечено, что $range
– это переменная php, содержащая слово. Он выдает это сообщение об ошибке:
Fatal error: Uncaught PDOException: SQLSTATE [42000]: Синтаксическая ошибка или нарушение доступа: 1064 У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии сервера MariaDB, для правильного синтаксиса для использования рядом с «ALL WHEN» ALL «THEN TRUE ELSE re.date_time> unix_timestam» в строке 13 в C: \ xampp \ htdocs \ myweb \ others \ users.php : 120 Трассировка стека: # 0 C: \ xampp \ htdocs \ myweb \ others \ users.php (120): PDO-> prepare ('SELECT u.id use …') # 1 C: \ xampp \ htdocs \ myweb \ others \ questions.php (359): users-> index ('AND categories …', 'INNER JOIN qan …', 'tagged') # 2 C: \ xampp \ htdocs \ myweb \ others \ users.php (26): questions-> tagged ('index') # 3 C: \ xampp \ htdocs \ myweb \ application \ other.php (24): users-> index () # 4 C: \ xampp \ htdocs \ myweb \ index.php (161): require_once ('C: \ xampp \ htdocs …') # 5 {main} выбрано в C: \ xampp \ htdocs \ myweb \ others \ users.php в строке 120
Кто-нибудь, что случилось?