Fomulaire de recherche multicritères en php

MISS97200 Messages postés 187 Statut Membre -  
MISS97200 Messages postés 187 Statut Membre -
Bonjour,
j'ai besoin de faire un formulaire de recherche multicritères, pouvez vous m'aider s'il vous plait.
Sachant que l'utilisateur peut remplis tous les champs ou quelques un.
merci de votre aide.
A voir également:

5 réponses

Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
Bonjour,

si le premier est obligatoire

tu construit ta requette ainsi:

$req="SELECT * FROM ta_table WHERE champ1_table='".$_POST['champ1']."'';

if=($_POST['champ2']!=""){
$req.=" AND champ2_table='".$_POST['champ2']."'";

}
if=($_POST['champ3']!=""){
$req.=" AND champ3_table='".$_POST['champ3']."'";

}

etc..

et $resultat=mysql_query($req);

etc....

@lain
2
MISS97200 Messages postés 187 Statut Membre 11
 
et je suppose que si ce n'est pas obligatoire, je fais des if sur chaque critères?
Mon soucis est de l'afficher.
Comment faire pour afficher le résultat sur une autre page sous forme de tableau.
0
MISS97200 Messages postés 187 Statut Membre 11
 
quelqu'un peut m'aider s'il vous plait.
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
Si aucun n'est obligatoire:

//avant tu te connectes et selectionne ta base
$req="SELECT * FROM ta_table WHERE ";
if=($_POST['champ2']!=""){
$req.=" champ1_table='".$_POST['champ1']."'";
}else{
$req.=" champ1_table LIKE '%'"; //seul le premier comme ça
}
if=($_POST['champ2']!=""){
$req.=" AND champ2_table='".$_POST['champ2']."'";

}
if=($_POST['champ3']!=""){
$req.=" AND champ3_table='".$_POST['champ3']."'";

}

//etc..

$resultat=mysql_query($req);
echo "<table border='1'>";
echo "<tr><th>champ1_table</th><th>champ2_table</th><th>champ3_table</th></tr>"; //titres

while($ligne=mysql_fetch_array($resultat)){
	echo "<tr><td>".$ligne['champ1_table']."</td><td>".$ligne['champ2_table']."</td><td>".$ligne['champ3_table']."</td></tr>";
}
echo "</table>";
//  si tu en as plus tu adaptes



0
MISS97200 Messages postés 187 Statut Membre 11
 
ok, je ne savais pas que l'on pouvait rajouter des éléments à la requête ainsi.
je te remercie, je vais essayer.
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
a la relecture, j'ai fait une petite erreur:

//avant tu te connectes et selectionne ta base
$req="SELECT * FROM ta_table WHERE ";
if=($_POST['champ1']!=""){//il faut le 1 et pas le 2 ici
$req.=" champ1_table='".$_POST['champ1']."'";
}else{
......
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
MISS97200 Messages postés 187 Statut Membre 11
 
oui, j'ai vu
0