Я работаю над фильтрами списка товаров, но не понимаю логику для одного условия, предложите мне внести изменения .
Мой фрагмент кода (часть моей функциональности):
....
....
if((is_array($origin) && count($origin)>0)||(!is_array($origin) && $origin!=""))
{
$origin = implode("','",$origin);
$this->db->select('product_attributes_id');
$this->db->where('title','Origin');
$this->db->where('status',1);
$this->db->where('is_active','Active');
$result = $this->db->get('tbl_product_attributes');
if($result->num_rows())
$paFinRes = $result->result_array();
else
$paFinRes = array();
$paId = $paFinRes[0]['product_attributes_id'];
$filterQry .= " AND p.`product_id` IN (SELECT `product_id` FROM tbl_product_attributes_price WHERE `product_attributes_id`='".$paId."' AND `product_dimension` IN ('".$origin."'))";
}
....
....
это условие работает нормально со всеми другими параметрами фильтра ..
Работает хорошо для столбца происхождения базы данных со следующими значениями
Индия
Африка
Австралия
======================================================
Не работает хорошо для столбца происхождения базы данных со следующими значениями
Индия
Африка, Россия
Австралия, Бразилия
=======================================================
Пожалуйста, предложите мне изменения в вышеупомянутом множественном происхождении условия if (с запятой).