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

Получить количество оценок в массив в category.php


Recommended Posts

Всем здравствуйте. Суть задачи получить в массив $data['products'][] = array 

Количество оценок product.

То есть кол-во:

1 оценки,

2 оценки,

3 оценки и т.д до 5

Как понимаю нужно в модели создать

public function getTotalRatingsProductId($product_id) {

тут код запроса.

}

сделать запрос, не силен в этой части. Прошу помощи.

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


Может кому понадобится.

Критика приветствуется, так как додумал сам, хз может не очень верно вышло.

В model/catalog/product 

ocmod, ом добавил public function getMainProductStat($product_id), где и добавил запрос. Получив значение в массив.

SELECT product_id, rating, status, review_id FROM " . DB_PREFIX . "review WHERE product_id = '" . (int)$product_id . "' AND `rating` < '6' AND `status` = '1'

Ну и в controller/category Уже вывел.

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


Получить все оценки товара и рассортировать
 

public function getTotalRatingsProductId($product_id) {
    $ratings = array(1, 2, 3, 4, 5);
    
    $rating_data = array(
        1   => 0,
        2   => 0,
        3   => 0,
        4   => 0,
        5   => 0
    );
    
    $review_query = $this->db->query("SELECT review_id, rating FROM " . DB_PREFIX . "review WHERE status = '1' AND product_id = '" . (int)$product_id . "' ORDER BY review_id ASC");
    
    foreach ($review_query->rows as $row) {
        foreach ($ratings as $rating) {
            if ($row['rating'] == $rating) {
                $rating_data[$rating]++;
                
                break;
            }
        }
    }
    
    return $rating_data;
}

 

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


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

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

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

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

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

Вхід

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

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

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

Important Information

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