J'ai actuellement un formulaire qui présente différentes listes déroutantes et qui à l'envoi effectue une recherche selon les critères demandés.
Auparavant lorsqu'un champ n'étais pas renseigné, un script JavaScript me l'indiquait.
Or sur demande de mon chef de projet, il serait bien que les requêtes s'effectuent en fonction des champs remplis.
Exemple, si aucun champ n'est renseigné, tous les logements apparaissent.
Exemple2, si seul le prix mini est renseigné, alors s'affiche les logements correspondant.
Pour le résultat des 2 exemples, ce sont évidemment 2 requêtes différentes.
Sachant que j'ai 5 listes déroulantes dans ce formulaire, j'ai 5⁵ possibilités de choix que l'utilisateur peux effectuer si je me trompe pas, alors je voudrais savoir si la seule possibilité est de traiter tous les cas possible auquel cas, ça risque de me prendre énormément de temps et me donner énormément de conditions dans ma page de traitements des résultats, ou alors y à t-il une solution à laquelle je n'ai pas pensée?
Voici mon formulaire si sa peut aider:
echo "<form onsubmit=\"return valider()\" method=\"POST\" action=\"resultat.php\" name=\"formulaire\" >";
echo "<div id=\"legend\"><fieldset>";
echo "<legend>Hébergement</legend>";
$lien=connect_bdd();
$requete="SELECT libelle_type from TYPE;";
$resultat=mysql_query($requete,$lien);
echo "<label for=\"champ\"></br>Type: </label><select id=\"selectType\" name=\"selectType\" size=\"1\"><OPTION value = \"--Choix--\">--Choix--</OPTION>";
while (($libelle_type = mysql_fetch_row ($resultat))!=NULL) {
echo "<OPTION>".$libelle_type[0]."</OPTION>";
}
echo "</select></br></br>";
echo "<label for=\"champ\">Prix: compris entre </label>";
echo "<select id=\"prix1\" name=\"prix1\" size=\"1\"><OPTION value=\"--Choix--\">--Choix--</OPTION>";
echo "<OPTION>".$prix[0]."</OPTION>";
echo "<OPTION>".$prix[1]."</OPTION>";
echo "<OPTION>".$prix[2]."</OPTION>";
echo "<OPTION>".$prix[3]."</OPTION>";
echo "<OPTION>".$prix[4]."</OPTION>";
echo "<OPTION>".$prix[5]."</OPTION>";
echo "<OPTION>".$prix[6]."</OPTION>";
echo "<OPTION>".$prix[7]."</OPTION>";
echo "<OPTION>".$prix[8]."</OPTION>";
echo "<OPTION>".$prix[9]."</OPTION>";
echo "<OPTION>".$prix[10]."</OPTION>";
echo "<OPTION>".$prix[11]."</OPTION>";
echo "</select>";
echo "<label for=\"champ\"> et </label>";
echo "<select id=\"prix2\" name=\"prix2\" size=\"1\"><OPTION value = \"--Choix--\">--Choix--</OPTION>";
echo "<OPTION>".$prix[0]."</OPTION>";
echo "<OPTION>".$prix[1]."</OPTION>";
echo "<OPTION>".$prix[2]."</OPTION>";
echo "<OPTION>".$prix[3]."</OPTION>";
echo "<OPTION>".$prix[4]."</OPTION>";
echo "<OPTION>".$prix[5]."</OPTION>";
echo "<OPTION>".$prix[6]."</OPTION>";
echo "<OPTION>".$prix[7]."</OPTION>";
echo "<OPTION>".$prix[8]."</OPTION>";
echo "<OPTION>".$prix[9]."</OPTION>";
echo "<OPTION>".$prix[10]."</OPTION>";
echo "<OPTION>".$prix[11]."</OPTION>";
echo "</select>";
echo "<label for=\"champ\"> €</label></br></br>";
echo "<label for=\"champ\"> Capacité: mini </label>";
echo "<select id=\"capacite\" name=\"capacite\" size=\"1\"><OPTION value = \"--Choix--\">--Choix--</OPTION>";
echo "<option>".$capacite[0]."</option>";
echo "<option>".$capacite[1]."</option>";
echo "<option>".$capacite[2]."</option>";
echo "<option>".$capacite[3]."</option>";
echo "<option>".$capacite[4]."</option>";
echo "</select>";
echo "<label for=\"champ\"> personnes(s)</label></br></br>";
echo "<label for=\"champ\"> Localité: inférieur à </label>";
echo "<select id=\"localisation\" name=\"localisation\" size=\"1\"><OPTION value = \"--Choix--\">--Choix--</OPTION>";
echo "<option>".$localisation[0]."</option>";
echo "<option>".$localisation[1]."</option>";
echo "<option>".$localisation[2]."</option>";
echo "</select>";
echo "<label for=\"champ\"> km de Bains</label></br></br>";
echo "</fieldset></div></br>";
echo "<input type=\"reset\" value=\"Reinitialiser\">";
echo "<input type=\"submit\" id=\"valeur\" name=\"valeur\" value=\"Valider\">";
echo "</form>";
echo "</div>";
sbomb;@+