Doublon dans menus déroulants successifs avec accès BDD en php sans javascript

Résolu
moaaa2 Messages postés 4 Date d'inscription lundi 19 décembre 2005 Statut Membre Dernière intervention 13 novembre 2008 - 13 nov. 2008 à 12:42
moaaa2 Messages postés 4 Date d'inscription lundi 19 décembre 2005 Statut Membre Dernière intervention 13 novembre 2008 - 13 nov. 2008 à 17:58
Bonjour,
voici un petit moment que je planche sur mon problème et malgré mes recherches, je ne trouve pas la solution et c'est pourquoi j'ai besoin de vous!!! 
Je pense que tout est dans le titre: je souhaiterais faire deux menus déroulants en PHP avec un accès à une base de donnée et que le deuxième dépende du premier.
J'ai bien réussi à faire les deux listes déroulantes et à faire dépendre la deuxième de la première; tout fonctionne!!! Par contre, lorsque le premier choix est effectué, il apparaît deux fois dans la liste déroulante 
Si quelqu'un pouvait m'aider... Je tiens à préciser que cela ne fait pas très longtemps que je me suis mis à PHP et à l'objet donc merci pour votre clémence 

Voici le code:
[php]
if(isset($_POST['nom_loc'])){
    $nom_rue_loc = $_POST['nom_loc'];

}
else
    $nom_rue_loc = '< Choisissez une rue >';
//Affichage des noms de localisation (rues)
$nom_loc='<select name="nom_loc" onChange="submit()">' ;
$nom_loc.='<option value="'.'">'. $nom_rue_loc .'</option>';
$requeteSQL="SELECT DISTINCT nom_loc FROM localisation";
$resultat = mysql_query($requeteSQL) or die (mysql_error());
    while ($donnees = mysql_fetch_object($resultat))
    {
        // concatenation des champs
        $nom_loc.='<option value="'.$donnees->nom_loc.'">'.$donnees->nom_loc.'</option>';
    }   
echo $nom_loc . '</select>
';

1 réponse

moaaa2 Messages postés 4 Date d'inscription lundi 19 décembre 2005 Statut Membre Dernière intervention 13 novembre 2008
13 nov. 2008 à 17:58
C'est bon...
Comme personne ne répondait, j'ai dû me débrouiller tout seul comme un grand

Après avoir revu mon code, je l'ai rechangé. Je ne sais pas si il est optimal mais voici le résultat pour ceux que ça intéresse:

[php]
    while ($donnees = mysql_fetch_object($resultat)) {
        if(isset($_POST['localisation_rue'])){
            if($_POST['localisation_rue']== $donnees->nom_loc){
                echo '<option value="'.$donnees->nom_loc.'" selected="selected">'.$donnees->nom_loc.'</option>';
                $nom_loc_select = $donnees->nom_loc;
            } else
                echo '<option value="'.$donnees->nom_loc.'">'.$donnees->nom_loc.'</option>';
        } else {
            //concatenation des champs
            echo '<option value="'.$donnees->nom_loc.'">'.$donnees->nom_loc.'</option>';
        }
    }
3
Rejoignez-nous