Добрый день!
Есть фильтр на сайте, который должен должен фильтровать по параметрам: "размер" и "бренд":
Табличка в БД, по которой происходит выборка:
Сама выборка:
//выбираем товар
$st = $pdo->query('SELECT * FROM `brick`');
$oblBricks = $st->fetchAll();
//рез-т получаем в тегах select, option
<form action="" method="post">
<p class="lable">размер</p>
<select name="obl_size">
<option value="all">все</option>
<?php foreach ($oblBricks as $item): ?>
<option value="<?php echo $item['sz']; ?>"><?php echo $item['sz']; ?></option>
<?php endforeach; ?>
</select>
<p class="lable">производитель</p>
<select name="obl_brand">
<option value="all">все</option>
<?php foreach ($oblBricks as $item): ?>
<option value="<?php echo $item['brand']; ?>"><?php echo $item['brand']; ?></option>
<?php endforeach; ?>
</select>
<input type="submit" value="go" name="go_filter">
</form>
Далее применяется сам фильтр:
if(isset ($_POST['go_filter'])){
$size = $_POST['obl_size'];
$brand = $_POST['obl_brand'];
$stm = $pdo->prepare('SELECT * FROM `brick` WHERE sz=:sz AND brand=:brand ');
$stm->bindParam(':sz', $size, PDO::PARAM_INT);
$stm->bindParam(':brand', $brand, PDO::PARAM_INT);
$stm->execute();
$Filter = $stm->fetchAll();
// echo '<pre>';
// var_dump($Filter);
// echo '</pre>';
}
Вопрос заключается в том, что фильтрация происходит, если используются все значения, кроме
<option value="all">все</option>
, потому что в БД нет значения "all" или "все".
Как заставить фильтр выбирать, например, указав размер - "все", а производитель - "КЕРМА", то есть конкретный?
Спасибо.