- sklep_produkty: id | имя
- sklep_atr_prod: id | id_prod | атр | значение

В URL-адресе я использую ?fq=color('Czerwony'), чтобы получить значение, я использую код:
Код: Выделить всё
$fq = $this->getRequest()->getParam('fq');
$fq = explode(',', $fq);
$myArray = array();
foreach($fq as $param){
$literal_pattern = "/('[^']*')/";
$fq = preg_match($literal_pattern, $param, $token);
$myArray[] = str_replace("'", "", $token[0]);
}
Код: Выделить всё
$filterActionQuery = $db->select()->from('sklep_atr_prod', array('id_prod', 'wartosc'));
foreach($myArray as $parames){
$filterActionQuery->where('wartosc = ?', $parames);
}
$filterActionresult = $db->fetchAll($filterActionQuery);
Код: Выделить всё
SELECT `sklep_atr_prod`.`id_prod`,
`sklep_atr_prod`.`wartosc`
FROM `sklep_atr_prod`
WHERE (wartosc = 'Czerwony')
Код: Выделить всё
Array
(
[0] => stdClass Object
(
[id_prod] => 1
[wartosc] => Czerwony
)
[1] => stdClass Object
(
[id_prod] => 3
[wartosc] => Czerwony
)
)
Результат SQL:
Код: Выделить всё
SELECT
`sklep_atr_prod`.`id_prod`,
`sklep_atr_prod`.`wartosc`
FROM `sklep_atr_prod`
WHERE (wartosc = 'Czerwony') AND (wartosc = 'XL')
Подробнее здесь: https://stackoverflow.com/questions/455 ... cts-filter
Мобильная версия