Pb sql est les listes box

herveguedj Messages postés 44 Date d'inscription dimanche 27 avril 2003 Statut Membre Dernière intervention 28 octobre 2009 - 5 nov. 2003 à 09:54
herveguedj Messages postés 44 Date d'inscription dimanche 27 avril 2003 Statut Membre Dernière intervention 28 octobre 2009 - 5 nov. 2003 à 16:13
bonjour,

j'ai un site auto avec un formulaire de rech par marque
un combo box qui liste toutes les marques
je voudrais que quand la personne clique sur indifferent
la requete liste toutes les marques de voitures
code ma liste
$sql="select * from marque order by marque";
$result=mysql_query($sql) or die ("erreur sql");
echo "<select name='idmarque'>";
echo "<option value='' selected></option>";
while ($rang=mysql_fetch_array($result)){
$idmarque=$rang[idmarque];
$marque=$rang[marque];
echo "<option value="$idmarque">$marque</option>";
}
echo "</select>";

on m'a dit d'essaye
if ($idmarque == "indifferent")
{
$idmarque = "%";
}
$sql="select * from vehicule,marque,region where vehicule.idmarque=marque.idmarque and vehicule.idreg=region.idreg and (marque.idmarque='$idmarque') and (carbu='$carbu') and (region.idreg='$idreg')";

mains ne marche pas
merci pour votre aide

2 réponses

Tomcube Messages postés 311 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 14 septembre 2004 1
5 nov. 2003 à 14:33
alors déjà, tu n'as aucun "option" qui a une valeur qui est "indifferent". Tu devrais remplacer :
echo "<option value='' selected></option>";
par:
echo "<option value='indifferent' selected>Indifferent</option>;

Ensuite, remplace la phase de test par :
$sql = select * from vehicule,marque,region where vehicule.idmarque=marque.idmarque and vehicule.idreg=region.idreg and (carbu='$carbu') and (region.idreg='$idreg')";
if ($idmarque != "indifferent")
{
$sql .= "and (marque.idmarque='$idmarque')";
}

Dit moi si ça marche ^^ !
0
herveguedj Messages postés 44 Date d'inscription dimanche 27 avril 2003 Statut Membre Dernière intervention 28 octobre 2009
5 nov. 2003 à 16:13
merci ca marche
cordialement
0
Rejoignez-nous