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

Выборка товаров по нескольким параметрам. Нужна помощь


Recommended Posts

Приветствую.

Делаю в товаре подборку похожих товаров. 
По 3 параметрам:
1. Товары из той же категории
2. Наличие > 1
2. Диапазон цены ниже на 30% и выше на 30%

Код написал, работает только по 2 параметрам, категория и наличие.

Не знаю как правильно дописать выборку по цене. Подскажите как SELECT price переделать или что там не так...?

Ниже код который должен делать выборку товаров:

public function getIncategoryProduct($main_category_id, $product_id) {
   $product_data = array();

   $price_product = $this->db->query("SELECT price FROM " . DB_PREFIX . "product WHERE product_id = '" . (int)$product_id . "' LIMIT 1");

   $min_price = $price_product/100*70;
   $max_price = $price_product/100*130;

   $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p.product_id = p2c.product_id) WHERE p2c.category_id = '" . (int)$main_category_id . "' AND p.price >= '" . (int)$min_price . "' AND p.price < '" . (int)$max_price . "' AND p.quantity > 1 LIMIT 7");

   foreach ($query->rows as $result) {
      $product_data[$result['product_id']] = $this->getProduct($result['product_id']);
   }
     
   return $product_data;
}


Верху примечание: Notice: Object of class stdClass could not be converted to int
Товары не выводятся..

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


Добавил строку кода и поправил 2 строки ниже. Кажись работает.
На сколько это правильное решение?
 

$prices_product = $price_product->row['price'];

$min_price = $prices_product/100*70;
$max_price = $prices_product/100*130;

 

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


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

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

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

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

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

Вхід

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

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

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

Important Information

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