Как вытащить определенную группу фильтра со значением по id

Тема в разделе "Общие вопросы", создана пользователем Sanik, 25 апр 2018.

  1. Sanik

    Sanik Активный пользователь

    Сообщения:
    299
    Симпатии:
    3
    Если бы было предложение от кого то мне помочь за данную сумму, а я увеличил до 400руб (написав некоторым специалистам) - то я бы не тратил сегодня весь день на поиски нужной информации и изучение массивов. В результате несколько строчек - и все работает..
     
  2. Sanik

    Sanik Активный пользователь

    Сообщения:
    299
    Симпатии:
    3
    Сами удалитесь, зачем спамите у меня в теме?
     
  3. Sanik

    Sanik Активный пользователь

    Сообщения:
    299
    Симпатии:
    3
    В контроллере product.php прописал следущее
    Код:
                $q = $this->db->query("SELECT pf.product_id, fd.filter_group_id as filter_group_id, fgd.name as name_param, fd.name as name_value FROM `".DB_PREFIX."product_filter` pf
                LEFT JOIN `".DB_PREFIX."filter` f ON (f.filter_id = pf.filter_id)
                LEFT JOIN `".DB_PREFIX."filter_description` fd ON (fd.filter_id = pf.filter_id)
                LEFT JOIN `".DB_PREFIX."filter_group_description` fgd ON (fgd.filter_group_id = fd.filter_group_id) WHERE pf.product_id = ".$this->request->get['product_id']." ");
               
                $data['attributes_from_filter'] = array();
                if ($q->rows) {
                    foreach ($q->rows as $row) {
                        $data['attributes_from_filter'][] = array(
                        'filter_group_id' => $row['filter_group_id'],
                        'name' => $row['name_param'],
                        'value' => $row['name_value']
                        );
                    }
                }
    Получил id, name и value, со структурой массива как у атрибутах
    в шаблоне вывел
    Код:
                            <? if ($attributes_from_filter) { ?>
                                <? foreach ($attributes_from_filter as $attr) { ?>
                                    <? if (in_array($attr['filter_group_id'], array(5,4,10))) { ?>
                                        <div class="row">
                                            <div class="param_name col-md-4 col-sm-4 col-xs-6">
                                                <? echo $attr['name']; ?>
                                            </div>
                                            <div class="param_value col-md-8 col-sm-8 col-xs-6">
                                                <? echo $attr['value']; ?>
                                            </div>
                                        </div>
                                    <? } ?>
                                <? } ?>
                            <? } ?>
     
    Vlad нравится это.
  4. Sanik

    Sanik Активный пользователь

    Сообщения:
    299
    Симпатии:
    3
    Где я тут ною? Это вы тут пишите как обиженный человек, как будто я вам лично должен был написать и просить о помощи предлагая 1000$ за решение.