Как использовать оператор 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')
";
Результат тот же.