Résultats de 1 à 3 sur 3

Sujet : listes deroulantes

  1. #1
    Membre MP
    Inscrit
    août 2013
    Messages
    17

    listes deroulantes

    Bonjour tout le monde,

    J\'ai un petit soucis: j\'ai un formulaire avec deux listes déroulantes qui contiennent des données de la base de données. J\'arrive à mettre le contenu de ma base dans la première liste, et maintenant je voudrais pouvoir mettre dans la seconde une liste qui dépend du choix de la première.
    En fait, j\'ai une table qui contient deux champs (liste fermées: rubrique et attribut).
    La première liste déroulante contient toutes les rubriques et selon le choix de la rubrique je veux afficher la liste de tous ses attributs.
    Je n\'arrive pas à mettre cela en place. Si quelqu\'un peut m\'éclairer en me donnant une piste.
    Merci d\'avance.

    cowlili :

  2. #2
    Visiteur MP
    Visiteur MP
    bonjour,
    un début d\'aide ?
    Code:
    ?>
    <select name=\"rubrique\"
            onchange=\"location.href+=\'?prm1=\'this.options[this.selectedIndex].text;\">
    <? générer les lignes rubriques dans <options> ?>
    </select>
    <? si ($GET_[\"prm1\"] est défini)
       { ?>
         <select name=\"attributs\" ...>
         <? rechercher les lignes \"attributs\"
            pour $_GET[\"prm1\"] et générer les <options>
         ?></select><?   }
    est-ce [ suis-je ] clair ? @+

  3. #3
    Visiteur MP
    Visiteur MP
    Salut,
    Il faut que tu récupère la valeur choisit par l\'utilisateur dans la première liste déroulante.
    Tu peux faire deux scripts par exemple :

    Ta première liste qui marche avec envoie de la valeur par la methode post . Apres dans ton second script (appelé dans ta balise form). Tu fais un isset sur cette valeur, tu lis sa valeur et en fonction de ça tu executes la requete sur ta base de la meme manière que dans ton premier script.

    En gros ça donne un truc du style :
    Code:
    <?php
    $query =\"SELECT Id, Nom FROM Ta_Table\";
    $liste = mysql_query($query);
    
    echo\'<form method=\"post\" action=\"script2.php\">\';
    <select name=\"id\"></center>\';
    
    while ($ligne = mysql_fetch_assoc($liste))
     {
      $service = $ligne[\'Nom\'];
      $id = $ligne[\'Id\'];
      echo\'<option value=\"\'.$id.\'\">\'.$service.\'</option>\';
     }
    echo\'</select>\';
    echo\'</form>\';
    ?>
    Pour le script2.php :

    Code:
    <?php
    /**
     * Connexion à la base
     **/
    if (!$connexion = mysql_connect(SERVEUR,NOM,PASSWORD))
       {
        echo \'<p>connexion au serveur - \'.SERVEUR.\' - impossible</p>\';
        }
    
    if (! mysql_select_db(BASE))
       {
        echo \'<p>Sélection base - \'.BASE.\' - impossible</p>\';
       }
       else
       {
    // Requete de recuperation des champs
    $query =\"SELECT Id, Nom FROM Ta_table\";
    $liste = mysql_query($query);
    
    while ($ligne = mysql_fetch_assoc($liste))
    	{
    	$id=$_POST[\'id\'];
    if (isset($id))
    {
    if ($id==1)
    { // la tu n\'a plus qu\'a inserer une autre liste deroulante }
    else if ($id== ....
    ...
    }
    ?>
    Et voilà,

    Bon courage,
    ++

Informations du sujet

Utilisateur(s) parcourant ce sujet

il y a actuellement 1 utilisateur(s) parcourant ce sujet. (0 membre(s) et 1 visiteur(s))

Règles des messages

  • Vous ne pouvez pas créer de sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas importer de fichiers joints
  • Vous ne pouvez pas éditer vos messages
  •  
  • Les BB codes sont Activés
  • Les Smileys sont Activés
  • Le BB code [IMG] est Activé
  • Le code [VIDEO] est Activé
  • Le code HTML est Désactivé
Please disable Adblock!