Liste deroulante en fonction d'une autre liste deroulante
ydu
Messages postés61Date d'inscriptionmercredi 1 mars 2006StatutMembreDernière intervention 6 août 2009
-
25 nov. 2007 à 22:11
ydu
Messages postés61Date d'inscriptionmercredi 1 mars 2006StatutMembreDernière intervention 6 août 2009
-
27 nov. 2007 à 10:40
Bonjour à tous
Dans mon script PHP, je creer une premiere liste deroulante dans laquelle figure des noms de ville. dans ma base SQL, chaque nom de ville est associé a un code qui lui est propre mais ce code ne figure pas dans la liste deroulante.
Je souhaiterai, si possible, qu'une fois que l'utilisateur à selectionné une ville dans la liste (sans avoir à actionner un bouton de validation)que cela face apparaitre une segonde liste deroulante qui ressort des information extraites d'une base SQL en fonction du code de la ville sélectionnée comment est ce que je pourrais proceder ?
Merci d'avance
<?php
$connexion =mysql_connect('localhost','root',"") or die ("connexion impossible.");
$db=mysql_select_db('conquete',$connexion) or die ("base de données non accessible");
$resultat=mysql_query("select nom_groupe from groupe order by nom_groupe") or die ("requète non executé");
if (! $resultat)
{
echo "Erreur requete"; exit;
}
/* Creation de mon formulaire contenant les valeurs de ma base SQL groupe */
/* Déclaration de la valeur par défaut de ma liste déroulante */
echo"<option value='defaut' selected='selected'>Sélectionnez votre Groupe\n";
while ($ligne=mysql_fetch_assoc($resultat)) /* tant qu'il y a des occurences */
{
extract($ligne); /* extraction de mes occurences ==> enregistrement de ligne complete */
echo "<option value='$nom_groupe'>$nom_groupe\n"; /* ajout du champ nom_groupe de l'occurence dans la liste de choix */
}
echo "</select>\n";
echo "</form>\n";
/* mysql_close($connexion); ====> si je souhaite fermer ma connection SQL */
/* ajout de la liste de selection de l'entités si le choix est différent de GROUPE */
if ($_Post['reporting']!="Groupe") then
{
<?php
$connexion =mysql_connect('localhost','root',"") or die ("connexion impossible.");
$db=mysql_select_db('conquete',$connexion) or die ("base de données non accessible");
$resultat=mysql_query("select nom_groupe from groupe order by nom_groupe") or die ("requète non executé");
if (! $resultat)
{
echo "Erreur requete"; exit;
}
/* Creation de mon formulaire contenant les valeurs de ma base SQL groupe */
/* Déclaration de la valeur par défaut de ma liste déroulante */
echo "<SELECT NAME=selTest
onchange="redirect(this.options[this.selectedIndex].value)" >";
echo"<option value='defaut' selected='selected'>Sélectionnez votre Groupe</option>";
while ($ligne=mysql_fetch_assoc($resultat)) /* tant qu'il y a des occurences */
{
extract($ligne); /* extraction de mes occurences ==> enregistrement de ligne complete */
echo "<option value='$nom_groupe'>$nom_groupe</option>"; /* ajout du champ nom_groupe de l'occurence dans la liste de choix */
}
echo "</select>\n";
echo "</form>\n";
/* mysql_close($connexion); ====> si je souhaite fermer ma connection SQL */
/* ajout de la liste de selection de l'entités si le choix est différent de GROUPE */
if ($_GET["id_selected"])
{
//fait le traitement de nouveau lise
}
?>
</html>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Cette modification à eu pour effet de vider ma liste deroulante et de me mettre les données qu'elle comportait a coté comme du simple texte.
Je souhaiterai que ma premiere liste qui contient des noms de ville (et un code postale qui lui est propre et qui me sert de clé dans ma base SQL), une fois une ville selectionnée et donc indirectement son code, cela m'alimente une deuxieme liste qui comprend des habitant comportant chacun un numero qui lui est unique et son code poste de son lieu de residence.