IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

liste déroulantes dépendantes


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 84
    Points : 83
    Points
    83
    Par défaut liste déroulantes dépendantes
    Bonjour, je me confronte à un petit souci,

    j'ai deux liste déroulantes liées entre elles, si je sélectionne la 1ere, je peux sélectionner la 2eme et un bouton s'affiche pour valider. Jusqu'à là tout va bien.
    Mais si je resélectionne la 1ere liste, mon 1er post change mais le 2eme ne s'unset pas =x

    petit peu de code:
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    <?php $newc = array(); ?>
    <form name='form' method='POST' action=''>
       <select name="A1" onchange="form.submit();">
          <?php foreach($tableau1 as $selection){ ?>
          <option<?php if(isset($_POST['A1']) && $_POST['A1']==$selection ){echo "selected";} ?>><?php echo $selection; ?></option>
          <?php } ?>
       </select>
       <?php
       if(!empty($_POST['A1']){     
          $newc=chemin.'/'.$_POST['A1']; // chemin est un 'define' qui pointe vers un dossier
          $tab1= abc($newc); // function abc() est est fonction permettant d'afficher le contenu d'un dossier sous forme de tableau*
       ?>
          <select name="A2" onchange="form.submit();">
          <?php foreach($tab1 as $selection){ ?>
          <option<?php if(isset($_POST['A2']) && $_POST['A2']==$selection ){echo "selected";} ?>><?php echo $selection; ?></option>
          <?php } ?>
       </select>
    </form>

    Quelqu'un aurait une idée ?
    Sans pomme nous n'aurions jamais découvert la gravité... Sans tête Non plus.

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 418
    Points
    91 418
    Billets dans le blog
    20
    Par défaut
    mais le 2eme ne s'unset pas
    Ca veut dire quoi ça ?
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 84
    Points : 83
    Points
    83
    Par défaut
    bha si par exemple si la 1er liste est sur 'langue', que la 2eme est sur 'français' et que je change la valeru de la 1er liste (par exemple 'musique'), la 2eme liste reste sur français

    Donc ça me donne le chemin "chemin/../musique/français" alors que celui ci n'existe pas =x

    En gros la 2eme liste ne perd pas sa valeur si je change celle de la 1ere
    Sans pomme nous n'aurions jamais découvert la gravité... Sans tête Non plus.

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 418
    Points
    91 418
    Billets dans le blog
    20
    Par défaut
    Ah d'accord. Mais tu ne demandes jamais de faire ça dans ton code...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  5. #5
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 84
    Points : 83
    Points
    83
    Par défaut
    Oui par ce que je me suis cassé les dents dessus xd
    J'ai juste réécrit la partie fonctionnelle de mon code pour le cas général


    ps: désolé pour le mes phrases pas forcément bien formées, j'utilise un clavier avec des black-stick alors que d'habitude j'utilise des blue-stick gros fossé
    Sans pomme nous n'aurions jamais découvert la gravité... Sans tête Non plus.

  6. #6
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 418
    Points
    91 418
    Billets dans le blog
    20
    Par défaut
    Tu as deux solutions qui peuvent se valoir.
    En JavaScript, avant de faire le submit sur la première liste tu réinitialise le second select en lui donnant comme value la valeur par défaut.
    Ou alors tu mets les deux select dans deux formulaires différents comme ça tu reçois une seule valeur à chaque fois. Eventuellement, si tu as besoin de la première valeur avec celle du second select, tu peux soit la stocker en session, soit l'affecter à un input hidden du deuxième formulaire.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  7. #7
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 84
    Points : 83
    Points
    83
    Par défaut
    Je pense que ta 1er suggestion pourrait peut être fonctionner, la 2eme ne fonctionnera pas malheureusement car déjà essayé en utilisant les sessions je devrais faire des conditions en mode exponentielle à cause du reste de mon code

    Je posterai la solution demain si elle fonctionne, je viens de faire 8h de php d'affilé avec un clavier de ... je pense que dormir un peu ne me fera pas de mal non plus
    Sans pomme nous n'aurions jamais découvert la gravité... Sans tête Non plus.

  8. #8
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 84
    Points : 83
    Points
    83
    Par défaut
    voila la solution que j'ai trouvé:

    j'initialise mes valeurs
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $post1=isset($_POST['A1']) ? $_POST['A1'] : null;// si $_post[a1] existe alors $post1 prend sa valeur sinon $_post[a1] = null
    $post2=isset($_POST['A2']) ? $_POST['A2'] : null;
    // je met mon affichage et mes conditions pour A1
    je donne la valeur de mon chemin
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $tab2=abc(chemin.'/'.$post1);
    j'unset les valeurs de a2 avant affichage
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    unset($post2);
    unset($_POST['A2']);
    // je met mes conditions et fini mon affichage

    j'ai lié trois listes avec cette méthode sans erreur
    et le tout sans Javascript ni session !
    Sans pomme nous n'aurions jamais découvert la gravité... Sans tête Non plus.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Zone de liste déroulante dépendante et sous-formulaire
    Par Philosophine dans le forum Access
    Réponses: 6
    Dernier message: 24/10/2006, 22h41
  2. Réponses: 2
    Dernier message: 15/09/2006, 19h03
  3. Réponses: 3
    Dernier message: 30/06/2006, 22h56
  4. Réponses: 4
    Dernier message: 17/03/2006, 14h39
  5. Liste déroulante dépendante
    Par nanas dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 18/02/2005, 15h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo