Перейти к содержанию
Официальный форум поддержки Simpla

Рекомендуемые сообщения

Всем доброе утро!

 

На сайте сейчас есть фильтр по сезону через свойства товара (осень зима...). Я хочу сделать все товары например сезона "осень" на одной странице.

 

Делаю в файле products.php следующую запись

if(isset($filter['discounted777']))
$discounted777_filter = $this->db->placehold('AND (SELECT * FROM __options WHERE 'value' LIKE '%осень%') ', intval($filter['discounted777']));      
     

 

Этот sql запрос через phpmyadmin выводит товары которые соответствуют условию, но на сайте пишет нет товаров.

 

в htacess пишу

RewriteRule ^sale777/?$ index.php?module=ProductsView&mode=sale777 [L,QSA]

 

Таким образом должны появиться товары на странице /sale777, но товары не появляются.

 

Помогите пожалуйста исправить запрос.

Ссылка на сообщение
Поделиться на другие сайты

В запросе совсем неверно - кавычки внутри кавычек.

Попробуйте внешние кавычки поменять на двойные...

Ссылка на сообщение
Поделиться на другие сайты
$discounted777_filter = $this->db->placehold("AND (SELECT * FROM __options po WHERE 'value' LIKE '%осень%') ", intval($filter['discounted777']));      

 

Так тоже не работает..

Ссылка на сообщение
Поделиться на другие сайты

И так тоже не работает

 $discounted777_filter = $this->db->placehold("AND (SELECT 1 FROM __options po WHERE po.value LIKE '%осень%') = ?", intval($filter['discounted777']));      

Ссылка на сообщение
Поделиться на другие сайты

Если Вы работаете методом бездумной вставки похожего кода, то так гадать можно долго.

Надо проверять все детали.  Для этого либо самому разобраться в основах, чтоб хоть немного понимать, либо просить специалиста сделать за небольшую денежку...

Ссылка на сообщение
Поделиться на другие сайты

Если Вы работаете методом бездумной вставки похожего кода, то так гадать можно долго.

Надо проверять все детали.  Для этого либо самому разобраться в основах, чтоб хоть немного понимать, либо просить специалиста сделать за небольшую денежку...

 

Хотелось бы все таки самому разобраться (либо с помощью специалистов). А как тестировать и проверять этот запрос? Через phpmyadmin запрос который выводит то что мне надо выглядит вот так

 

SELECT * FROM `s_options` WHERE `value` LIKE '%осень%' ORDER BY `value` ASC
Ссылка на сообщение
Поделиться на другие сайты

 

Хотелось бы все таки самому разобраться (либо с помощью специалистов). А как тестировать и проверять этот запрос? Через phpmyadmin запрос который выводит то что мне надо выглядит вот так

 

SELECT * FROM `s_options` WHERE `value` LIKE '%осень%' ORDER BY `value` ASC

 

if(isset($filter['discounted777']))
$discounted777_filter = $this->db->placehold('AND (SELECT * FROM __options WHERE value LIKE '%осень%') ', intval($filter['discounted777'])); 
Ссылка на сообщение
Поделиться на другие сайты

alexivchenko, Вы проверяли свой совет хоть чуть-чуть? Не догадываетесь, что там как минимум одна серьезная ошибка?
 

Хотелось бы все таки самому разобраться (либо с помощью специалистов). А как тестировать и проверять этот запрос?

 

Выводить живьем текст запроса на экран, смотреть и проверять...

Ссылка на сообщение
Поделиться на другие сайты

 

Хотелось бы все таки самому разобраться (либо с помощью специалистов). А как тестировать и проверять этот запрос? Через phpmyadmin запрос который выводит то что мне надо выглядит вот так

 

SELECT * FROM `s_options` WHERE `value` LIKE '%осень%' ORDER BY `value` ASC

 

 

		if(isset($filter['discounted777']))
			$discounted777_filter = $this->db->placehold("AND p.id in (SELECT product_id FROM __options WHERE value LIKE '%осень%')", intval($filter['discounted777']));
Ссылка на сообщение
Поделиться на другие сайты

Этот код выводит все товары магазина, не фильтрует...

 

Уточнение: код выводит товары из фильтра, только товаров выводится на 7 страниц, а показывается 38, с 8 страницы пишет товары не найдены...

Изменено пользователем esistema1
Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...