Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Ошибка - PHP Notice: Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax


pimur

Recommended Posts

Добрый день переодически выскакивает ошибка в логах админки.

Сама ошибка:

2016-07-04 8:17:18 - PHP Notice:  Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') AND ps.customer_group_id = '1' AND ((ps.date_start = '0000-00-00' OR ps.date_s' at line 1<br />Error No: 1064<br />SELECT count(*) as total FROM (SELECT DISTINCT p.product_id, coalesce((SELECT price FROM _product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '1' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1), (SELECT price FROM _product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '1' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1),  p.price) as realprice  FROM _product p LEFT JOIN _product_option_value pov ON (pov.product_id=p.product_id) LEFT JOIN _product_to_store p2s ON (p2s.product_id=p.product_id) LEFT JOIN _product_to_category p2c ON (p2c.product_id=p.product_id) LEFT JOIN _product_special ps ON ( ps.product_id = p.product_id ) WHERE 1 AND p.manufacturer_id IN() AND ps.customer_group_id = '1' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW( )) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW( ))) AND p.price >=0 AND p.status = '1' AND p.date_available <= NOW( ) AND p2s.store_id = 0) as innertable WHERE 1  AND realprice >=0 in /home/webpodarok/domains/сайт.ру/public_html/system/database/mysql.php on line 50
 
Просьба подсказать по данной ошибки или направить в нужную сторону по ее решению.
 
Прошу прощения не в ту ветку закинул вопрос. Просьба перенести в ветку 1.5
Змінено користувачем pimur
Надіслати
Поділитися на інших сайтах


Уберите из запроса вот эту часть:

AND p.manufacturer_id IN()

в случаях, когда не указан ни один производитель.

ЗЫ: запрос похож на тот, который делает фильтрпро при получении списка продуктов.

  • +1 1
Надіслати
Поділитися на інших сайтах


  • 2 months later...

Уберите из запроса вот эту часть:

AND p.manufacturer_id IN()

в случаях, когда не указан ни один производитель.

ЗЫ: запрос похож на тот, который делает фильтрпро при получении списка продуктов.

Вы наверно правы, так как есть товары которым не указан производитель. 

А не подскажите откуда можно убрать данную часть, точнее с какого файла?

Надіслати
Поділитися на інших сайтах


в catalog/model/catalog/product.php

есть вот такая строчка, но не пойму что с ней делать

$query = $this->db->query("SELECT COUNT(DISTINCT ps.product_id) AS total FROM " . DB_PREFIX . "product_special ps LEFT JOIN " . DB_PREFIX . "product p ON (ps.product_id = p.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) WHERE p.status = '1' AND p.date_available <= '" . $this->NOW . "' AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "' AND ps.customer_group_id = '" . (int)$customer_group_id . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < '" . $this->NOW . "') AND (ps.date_end = '0000-00-00' OR ps.date_end > '" . $this->NOW . "'))");

Кто еще что подскажет? Как Вы понимаете, если и проблема с фильтром, то смысла сейчас нет обращаться к автору фильтра. Просьба подсказать.

Змінено користувачем pimur
Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.