Hej robie filtry produktów w czystym php i mam problem ponieważ kod poniżej raz działa raz nie
<form action="" method="POST">
<br><h3>Filtruj</h3>
<br>Płeć:<br>
<input type="checkbox" name="gender" value="On"> Mężczyna<br>
<input type="checkbox" name="gender" value="Ona"> Kobieta<br>
<input type="checkbox" name="gender" value="Unisex"> Dla obu<br>
<br>Cena:<br>
<input id="num" placeholder="Od" type="number" name="n1">
<input id="num" placeholder="Do" type="number" name="n2"><br>
<br>Kolor:<br>
<?php
echo
'<select name="color">
<option>Wybierz</option>';
$result = $connect->query("SELECT color FROM products GROUP BY color");
while ($row = $result -> fetch_assoc())
{
echo '<option value='.$row['color'].'>'.$row['color'].'</option>';
}
echo '</select>';
?><br>
<br>wyprzedarz:<br><br>
<input type="submit" name="sub1" value="Filtruj">
<?php
echo '<a href="selected_category.php?id='.$category_id.'">Reset</a>'
?>
</form>
<?php
$category_id = $_GET['id'];
$sql = "SELECT * FROM products WHERE category_id = $category_id";
if(isset($_POST['sub1']))
{
if(isset($_POST['gender']) && !empty($_POST['gender']))
{
$gender = $_POST['gender'];
$sql = $sql . " AND gender = '$gender'";
}
if(isset($_POST['n1']) && !empty($_POST['n1']))
{
$n1 = $_POST['n1'];
$sql = $sql . " AND price >= '$n1'";
}
if(isset($_POST['n2']) && !empty($_POST['n2']))
{
$n2 = $_POST['n2'];
$sql = $sql . " AND price <= '$n2'";
}
if(isset($_POST['color']) && !empty($_POST['color']))
{
$color = $_POST['color'];
$sql = $sql . " AND color = '$color'";
}
}
else
{
$sql = "SELECT * FROM products WHERE category_id = $category_id";
}
$result = $connect->query($sql);
i tak dalej akcja jest taka ze albo mam dobre wyniki albo nie mam nic