public static function queryCategories($cats) { $categs = ''; if (!is_array($cats)) { $cats = urldecode($cats); $pos = strpos($cats, ','); if ($pos !== false) { $cats = explode(",", $cats); } else { $cats = array($cats); } } if ($cats[0] > 0) { foreach ($cats as $key => $val) { $categs .= $val . ','; $categs .= AdvSearch::categoriesLower($val); } } $displaycats = explode(",", $categs); array_pop($displaycats); $displaycategories = 'INNER JOIN `' . _DB_PREFIX_ . 'category_product` cp ON (p.id_product = cp.id_product '; if (count($displaycats) && $displaycats[0] > 0) { $i = 0; $ile = count($displaycats); foreach ($displaycats as $key => $val) { if ($ile - 1 == $i && $i != 0) { $displaycategories .= ' || id_category =' . intval($val) . ') '; } elseif ($ile - 1 == $i && $i == 0) { $displaycategories .= ' AND id_category=' . intval($val) . ' '; } else { if ($ile > 0 && $i == 0) { $displaycategories .= ' AND ( id_category =' . intval($val) . ' '; } else { $displaycategories .= ' || id_category =' . intval($val) . ' '; } } $i++; } } $displaycategories .= ')'; return $displaycategories; }