Ik heb fout meldingen ingebouwd, echo's en op het web en in handleidingen gezocht.
Ik heb een formulier met 4 keuzevakjes: Land,Maand,Prijs,Logies.
Als men bij alle 4 iets selecteert werkt mijn resultatenpagina.
Echter is er ook de mogelijkheid om het volgende te selecteren:
Bij Land : <option value='Alle'>- Alle Landen
Bij Maan d : <option value='Gans'>Gans het jaar
Bij Prijs: <option value='Iedere'>Iedere prijs
Bij Logies : <option value='Alles'>Alle
Aangezien dat ‘Alle’ ‘Gans’ ‘Iedere’ ‘Alles’ niet in de db staan dacht ik het op te lossen met: if na SELECT
Dat lukt niet voor alle if
Code 19-22 werkt
Code 24-27 werkt niet
Code 29-32 werkt
Code 34-37 werkt niet
Code 39-42 werkt
Wat doe ik fout ?
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);
include('connect.php');
$zoekland=$_POST["LAND"];
$zoekmaand=$_POST["MAAND"];
$zoekprijs=$_POST["PRIJS"];
$zoeklogies=$_POST["LOGIES"];
$Alle='Alle';
$Gans='Gans';
$Iedere='Iedere';
$BHR='BHR';
$sql = "SELECT LAND, MAAND, DATUM, TOCHT, FOTO, TEKST, PRIJS, LOGIES, SOORT FROM `hippotrail` WHERE ";
if ($zoekland==$Alle)
{
$sql.=" MAAND ='$zoekmaand' AND PRIJS ='$zoekprijs' AND LOGIES ='$zoeklogies' ";
};
if ($zoekland==$Alle&&$zoekprijs==$Iedere&&$zoeklogies==$BHR)
{
$sql.=" MAAND ='$zoekmaand' ";
};
if ($zoekmaand==$Gans&&$zoekprijs==$Iedere&&$zoeklogies==$BHR)
{
$sql.= "LAND = '$zoekland' ";
};
if ($zoekland==$Alle&&$zoekmaand==$Gans)
{
$sql.=" PRIJS ='$zoekprijs' AND LOGIES ='$zoeklogies' ";
};
if ($zoekland!=$Alle&&$zoekmaand!=$Gans&&$zoekprijs!=$Iedere&&$zoeklogies!=$BHR)
{
$sql.=" LAND='$zoekland' AND MAAND ='$zoekmaand' AND PRIJS ='$zoekprijs' AND LOGIES ='$zoeklogies' ";
};
if(!$result = $mysqli->query($sql))
{
trigger_error('Fout in query: '.$mysqli->error);
}
else
while($row = $result->fetch_assoc())
{
$land = $row['LAND'];
$maand = $row['MAAND'];
$datum = $row['DATUM'];
$tocht = $row['TOCHT'];
$foto = $row['FOTO'];
$tekst = $row['TEKST'];
$prijs = $row['PRIJS'];
$logies = $row['LOGIES'];
$soort = $row['SOORT'];
$kolom_breedte =['360'];
$top = 'top';
$info='meer weten ...';
$left='left';
$right='right';
?>
<table cellspacing="15">
<tbody>
<tr>
<td colspan="5" valign="top" ><hr></td>
</tr>
<tr>
<td valign="top"></td>
<td valign="top"></td>
<td valign="top" align="left" width="250"><p></p></td>
<td valign="top" width="100"><p></p></td>
<td valign="top" width="50"><p></p></td>
</tr>
<tr>
<?php
echo" <td valign=$top>$land</td>
<td valign=$top><a href='$land.html'>$tocht</a></td>
<td valign=$top align=$right>$datum</td>
<td valign=$top align=$left>$maand</td>
";
echo" </tr>";
echo" <tr>";
echo" <td valign=$top><a href='$land.html'><img src='$foto.JPG' width=200 hight=250 /></a></td>
<td valign=$top align=$left>$tekst<br><p><a href='$land.html'>$info</a></p></td>
<td valign=$top align=$right>$prijs Euro</td>
<td valign=$top align=$left>$soort</td>
<td valign=$top align=$left>$logies</td>
";
echo" </tr>";
}
?>
</tbody></table>