Bonjour, j'ai un ptit souci avec mon code de recherche multi-critères, et je voit pas d'ou ça peut venir. Pourtant le code est très simple, j'ai un formulaire:
Citation :
<form action="resultatrecherche.php" method="post" >
nom de l'adherent
<input type="text" name = "nom" /><br />
prenom
<input type="text" name = "prenom" /><br />
le login IUT
<input type="text" name = "logiut" /><br />
l'adresse email
<input type="text" name = "mail" /><br />
<input type="submit" value="envoyer" />
</form>
|
et puis ma page resultatrecherche.php avec le code suivant:
Citation :
<?php
$sql = "SELECT numAdherent FROM `adherent` WHERE ";
$i = 0;
if(isset($_POST['nom']))
{
$sql.= "`NomAdherent` = '".$_POST['nom']."'";
$i++;
}
if(isset($_POST['prenom']))
{
if($i !=0)
$sql.= " AND `PrenomAdherent` = '".$_POST['prenom']."'";
else
{
$sql.= "`PrenomAdherent` = '".$_POST['prenom']."'";
$i++;
}
}
if(isset($_POST['logiut']))
{
if($i !=0)
$sql.= " AND `LoginEtudAdherent` = '".$_POST['logiut']."'";
else
{
$sql.= "`LoginEtudAdherent` = '".$_POST['logiut']."'";
$i++;
}
}
if(isset($_POST['mail']))
{
if($i !=0)
$sql.= " AND `emailAdherent ` = '".$_POST['mail']."'";
else
{
$sql.= "`emailAdherent ` = '".$_POST['mail']."'";
$i++;
}
}
$sql.= ";";
echo $sql;
?>
|
Le souci c'est que les isset ne sont pas pris en compte et je me retrouve donc avec des requêtes du style :
Citation :
SELECT numAdherent FROM `adherent` WHERE `NomAdherent` = 'pit' AND `PrenomAdherent` = '' AND `LoginEtudAdherent` = 'log' AND `emailAdherent ` = '';
|
Pas terrible pour rechercher :s
Si qqn peut me donner un ti coup d'pouce
Merci bien.
Message édité par clam8692 le 31-12-2005 à 16:10:00