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

PHP & Base de données Discussion :

Récupération de la valeur sélectionnée d'une table déroulante


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 33
    Par défaut Récupération de la valeur sélectionnée d'une table déroulante
    Bonjour.
    Je débute avec HTML, CSS, PHP sous windows 7 avec wamp. C'est ma première application.

    Dans mon application, un utilisateur peut avoir accès soit à toutes les délégations soit à une seule.
    J'ai une table des utilisateurs et c'est dans cette table que je stocke le droit d'accès : soit * pour accès à toutes les délégations soit le code de la délégation unique à laquelle il a accès.
    J'ai une table des délégations : t_delegation avec 2 champs : del_id et del_nom.
    Si l'utilisateur a accès à une seule délégation, pas de problème, je fais un
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM t_delegation WHERE del_id = $acces_deleg
    . J'obtiens alors le code (del_id) de la délégation en question et je peux continuer.
    Si un utilisateur a accès à toutes les délégations, je lis la table des délégations et je veux afficher la liste de toutes les délégations pour choisir celle sur laquelle travailler. Le choix de la délégation doit me conduire sur le même écran que ci-dessus avec le code del_id de la délégation que j'ai choisie..
    C'est là que je coince bien que je me sois sérieusement inspiré de "Générer une liste dynamique et garder la valeur sélectionnée"
    Voici mon code :
    Code : 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
    20
    21
    22
    23
    24
    25
    26
    <?php
    $acces_deleg = $_SESSION['acces_deleg'];
    if ($acces_deleg == '*' ) // si l'utilisateur a accès à toutes les délégations, il faut choisir une délégation
    // on récupère ce qu'il nous faut de la table t_delegation
    {			
    ?>
    <form method="post" action="pageutil2.php">
    	<p>
    	<h2> Sur quelle délégation voulez-vous travailler ?</h2>
    	<select  name="choix">
    <?php
    $reponse = $bdd->query("SELECT * FROM t_delegation");	
    while ($donnees = $reponse->fetch())
    {
    	$del_id = $donnees['del_id'];
    	$del_nom = $donnees['del_nom'];
    ?>
    	</br>
    	<option value="<?php echo $del_id; ?>" name="<?php echo $del_id;?>"> <?php echo $del_nom; ?> </option>
    <?php
    }
    ?>
    	</select> <br/><br/>
    	<input type="submit" value="Valider"/>
    <?php
    }
    J'affiche bien la liste des délégations. Si je clique sur l'une d'elles, je la sélectionne bien Quand je valide, je pars sur pageutil2.php, mais toujours avec la première délégation, même si je clique sur la 3ème !
    Qui peut m'aider ?
    Merci d'avance à celui ou celle qui pourra me donner les bons tuyaux !

  2. #2
    Membre averti
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2011
    Messages : 20
    Par défaut Précision
    Salut, je te conseille de télécharger Fiddler2 pour voir ce qui ce passe lors de ton envoi ( http://fiddler2.com/ )

    Après je ne comprends pas bien ton pb, ta liste déroulante est bien créée ?
    Ou c'est lors du POST que ça marche pas ?

    Si c'est lors du POST as tu regardé les value de tes <option> ?

    Code : 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
    $acces_deleg = $_SESSION['acces_deleg'];
    // si l'utilisateur a accès à toutes les délégations, il faut choisir une délégation
    if ($acces_deleg == '*' ){ ?>			
        <form method="post" action="pageutil2.php">
            <p>
            <h2> Sur quelle délégation voulez-vous travailler ?</h2>
            <select  name="choix">
        <?php
        $reponse = $bdd->query("SELECT del_id,del_nom FROM t_delegation");	
        while ($donnees = $reponse->fetch())
        {
            echo'</br><option value='.$donnees['del_id'].' name='.$donnees['del_id'].'>'.$donnees['del_nom'].'</option> ';
        }
        ?>
            </select> <br/><br/>
            <input type="submit" value="Valider"/>
    <?php
    }

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 33
    Par défaut Précisions supplémentaires
    D'abord, merci pour ta réponse.
    Ma liste est bien créée. Quand je sélectionne une délégation et que je clique sur "Valider", le système m'emmène bien sur la page "pageutil2.php mais la délégation qui s'affiche n'est pas celle que j'ai sélectionnée.
    Dans le cours de M. Nebra, il parle d'une variable $_POST['xxx'], mais je ne sais pas ce qu'est xxx ni où il faut mettre cette variable.

    Je vais essayer de charger et d'utiliser l'outil que tu me conseilles.
    A plus

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 33
    Par défaut C'est OK
    Ta réponse m'a été bien utile car j'ai cherché du côté de $_POST.En fait, il fallait mettre $_POST['choix'] dans pageutil2.php pour récupérer mon N° de délégation.
    C'est ta question sur le POST qui m'a aidé
    Merci

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

Discussions similaires

  1. Récupération de la valeur sélectionnée d'une liste déroulante.
    Par dimitri13 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 30/01/2015, 10h57
  2. Réponses: 3
    Dernier message: 02/02/2013, 11h45
  3. Réponses: 3
    Dernier message: 24/01/2011, 12h01
  4. Réponses: 4
    Dernier message: 07/12/2010, 10h42
  5. Réponses: 10
    Dernier message: 15/07/2008, 16h23

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