Как использовать оператор IN в pdo, если нужно чтобы фильтрация была по нескольким строчным элементам?

Пытаюсь реализовать фильтр товаров на сайте, но в операторе IN получается занести лишь один параметр, если в массиве $_POST будет 2 и более ключей, то результат пуст. Код представлен ниже:

$query = "
SELECT * FROM product WHERE price != 0
";

 if(isset($_POST["type"]))
 {
  $type_filter = implode(",", $_POST["type"]);
  $query .= "
   AND type IN(:type)
  ";
 }
 if(isset($_POST["activation"]))
 {
  $activation_filter = implode(",", $_POST["activation"]);
  $query .= "
   AND activation IN(:activation)
  ";
 }

if(isset($_POST["type"]))
{
$statement->bindParam(":type", $type_filter);
}

if(isset($_POST["activation"]))
{
$statement->bindParam(":activation", $activation_filter);
}

$statement->execute();
$result = $statement->fetchAll();

Так же пробовал преобразовывать массив в строку и таким способом, чтобы элементы были в одинарной кавычке:

$type_filter = implode("','", $_POST["type"]);
  $query .= "
   AND type IN(':type')
  ";

Результат тот же.


Ответы (0 шт):