Liste deroulante liées

Résolu
cs_neosquall Messages postés 10 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 6 mai 2009 - 3 mai 2009 à 18:21
cs_neosquall Messages postés 10 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 6 mai 2009 - 5 mai 2009 à 14:30
Bonjour a tous et merci pour les tuto


voila mon probleme, je sais qu'il y a beaucoup de tuto sur le sujet et
beaucoup de solution apporté mais je n'ai pas réussi a m'en sortir.
J'ai commencer le php ... hier soir et je suis un peu perdu je dois
bien l'avouer.

Voila je dois faire une petite gestion de parc automobile, j'ai donc
créer une bdd simple (une table lol) et je voudrais faire un moteur de
recherche un peu a la maniere de celui de lacentrale pour ceux qui
connaisse, le truc c'est que mes liste deroulante prennent les infos
dans la base de donnée et j'aimerai pouvoir faire en sorte que qd je
choisi "audi" ou "peugeot" dans la premiere liste cela limite les
autres (j'ai 3 listes deroulantes : marque, modele et energie) en gros
si je prend audi je voudrais que dans la liste modele il n'apparaisse
que les audi :).

De plus je dois aussi faire une selection en fonction du prix et du
kilometrage et une fois ttes les donnée remplis on clique sur un bouton
pour qu'un tableau apparaisse avec les donnée choisis. pfffff je c que
ca fait beaucoup mais je dois rendre ce test pour demain et je galere
vraiment vous etes mon ultime espoir.


voila le code qui me permet d'avoir les liste deroulante (il est peu etre faut mais en tout cas il m'affiche bien les données )

<html>

<?php

$connect=mysql_connect('localhost','greg','')ordie("erreur de connexion");
mysql_select_db('gestcar',$connect)ordie("erreur de connexion base");

$query=mysql_query("SELECT marque FROM vehicules GROUP BY marque");

echo'<select>';
while($result=mysql_fetch_assoc($query)){
echo'<option value="'.$result['marque'].'">'.$result['marque'].'</option>';

}

$query=mysql_query("SELECT modele FROM vehicules GROUP BY modele");

echo'<select>';
while($result=mysql_fetch_assoc($query)){
echo'<option value="'.$result['modele'].'">'.$result['modele'].'</option>';

}

$query=mysql_query("SELECT energie FROM vehicules ");

echo'<select>';
while($result=mysql_fetch_assoc($query)){
echo'<option value="'.$result['energie'].'">'.$result['energie'].'</option>';

}

mysql_close($connect);

?>

</html>

4 réponses

alexflex25 Messages postés 106 Date d'inscription vendredi 29 septembre 2006 Statut Membre Dernière intervention 6 mars 2012
4 mai 2009 à 13:57
2 solutions:
 - Soit tu utilises l'attribut HTML onchange="submit()" sur les "<select>"
 - Soit tu utilises de l'AJAX avec la bibliothèque "prototype" qui te suffira largement.

Exemple avec la première solution:

$connect=mysql_connect('localhost','greg','')ordie("erreur de connexion");
mysql_select_db('gestcar',$connect)ordie("erreur de connexion base");

$marques=mysql_query("SELECT marque FROM vehicules GROUP BY marque");

echo '<form action="#" method="get">';
echo '<select onchange="submit();" name="marque">';
while($result=mysql_fetch_assoc($marques)){
echo'<option value="'.$result['marque'].'">'.$result['marque'].'</option>';
}
echo '</select>';
echo '</form>';

//si tu as séléctionnés une marque, tu affiches ta liste déroulante des modèles associés à ta marque
if (isset($_GET['marque'])){
$modeles=mysql_query("SELECT modele FROM vehicules where marque='".$_GET['marque']."' GROUP BY modele");

echo'<select>';
while($result=mysql_fetch_assoc($modeles)){
echo'<option value="'.$result['modele'].'">'.$result['modele'].'</option>';

}
echo '</select>';
}else{
echo 'aucune marque sélectionnné';
}
3
cs_neosquall Messages postés 10 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 6 mai 2009
4 mai 2009 à 22:09
la premiere solution marche du tonnere je te remercie c trop cool :)
0
alexflex25 Messages postés 106 Date d'inscription vendredi 29 septembre 2006 Statut Membre Dernière intervention 6 mars 2012
4 mai 2009 à 22:58
Dans ce cas accepte la réponse.
il n'y a pas de quoi.
@+
0
cs_neosquall Messages postés 10 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 6 mai 2009
5 mai 2009 à 14:30
oups lol je n'avais meme pas vue qu'on pouvai accepter les reponses :) voila qui est fait et encore merci
0
Rejoignez-nous