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 :

Récupération de variable d'une zone de liste dans un form


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 62
    Par défaut Récupération de variable d'une zone de liste dans un form
    Bonjour,

    Je n'arrive pas à récupérer les variables provenant d'une zone de liste dans un form.

    Voici le 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
    27
    28
    29
    30
    31
    <?php 
    $uid=$_SESSION['uid'];
    if (isset($_POST['list_user'])) 
    $uid=$_POST['list_user'];
    ?>
    <?php  
    $req="SELECT use_nom, use_prenom, use_id FROM USER where use_actif=1 ORDER BY use_nom ";  
    $result=mysql_query($req); 
    ?>
     
    <form id="ajoutmission" name="ajoutmission" action="mission_verif.php" method="post" >
    <select name="list_user" size=1 >
    <?php while($row=mysql_fetch_array($result))  { ?>
    <option value='<?php echo $row[use_id]; ?>' ><?php echo $row[use_nom]; ?>&nbsp;<?php echo $row['use_prenom']; ?></option>
    <?php } ?>
    </select>
    <br /><br />
    <table>
    <tr><td>Ville</td><td><input type='text' name='ville' size='30'></td></tr>
    <tr><td>Pays</td><td><input type='text' name='pays' size='30'></td></tr>
    <tr><td>Date de départ</td><td><input type=text name='ddep' size=10 maxlenght=10></td></tr>
    <tr><td>Date de retour</td><td><input type=text name='dret' size=10 maxlenght=10></td></tr>
    <tr><td>Terrain</td><td><input type=checkbox name='terrain'></td></tr>
    <tr><td>Téléphone satelite</td><td><input type=checkbox name='telsat'></td></tr>
    <tr><td>Observation</td><td><input type=text name='observation' size=50 maxlenght=50></td></tr>
    <input type='hidden' name='use_nom' value="<?php echo $_POST['use_nom']; ?>" >
    <input type='hidden' name='use_prenom' value="<?php echo $row['use_prenom']; ?>">
    <input type='hidden' name='uid' value='$use_id'>
    <tr><td></td><td><input type=submit value='Valider' ></td></tr>
    </table>			
    </form>
    Lorsque je valide le form, voici ce que j'obtiens (valeur pour l'exemple) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Array
    (
        [list_user] => 505
        [ville] => Paris
        [pays] => France
        [ddep] => 25/10/2010
        [dret] => 28/10/2010
        [terrain] => on
        [telsat] => on
        [observation] => RAS
        [use_nom] => 
        [use_prenom] => 
        [uid] => $use_id
    )
    Je récupère bien les valeurs des inputtext/checkbox, mais pas les valeurs qui proviennent du <select>, cad, use_id, use_nom et use_prenom, elles restent désespérément vide malgré le fait que la liste est parfaitement générer, la valeur 505 affichée dans l'exemple correspond bien à l'user_id de la personne sélectionnée dans la liste avant la validation.

    Comme vous le voyez dans les hidden, j'ai essayé plusieurs méthodes, mais rien n'y fait !

    J'y ai passé la journée et malgré des recherches et de multiples tentatives, rien à faire.

    Merci à la personne qui pourra me débloquer !

    Patrice

  2. #2
    Membre éclairé Avatar de coach759
    Profil pro
    Webmaster
    Inscrit en
    Août 2009
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Août 2009
    Messages : 79
    Par défaut
    Bonjour,

    Je n'ai pas tout bien compris mais on va essayer de t'aider

    mais pas les valeurs qui proviennent du <select>
    De ton select tu récupère uniquement ton use_id

    echo $_POST['use_nom']
    Il vient d'où ton $_POST['use_nom'] ?

    action="mission_verif.php"
    Pourrais-t-on avoir une partie du code de cette page ?

    echo $row['use_prenom'];
    Tu veux quoi comme valeur dans ton <input name="use_prenom"/>

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 62
    Par défaut
    La page mission_verif.php contient juste :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    echo "<pre>";
    print_r($_POST);
    echo "</pre>";
    ?>
    Je veux juste vérifier à l'aide de cette page que j'ai bien mes variables avant d'aller plus loin et de faire l'insert en base de donnée.

    Pour le : echo $_POST['use_nom']

    C'est juste des essais pour essayer de récupérer les variables !

    Pour la dernière question !
    Tu veux quoi comme valeur dans ton <input name="use_prenom"/>

    Je voudrais récupérer les valeurs correspondantes aux use_nom, use_prenom et use_id de la personne sélectionnée dans le <select>

    Merci pour votre aide !

  4. #4
    Membre éclairé Avatar de coach759
    Profil pro
    Webmaster
    Inscrit en
    Août 2009
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Août 2009
    Messages : 79
    Par défaut
    ok, mais je comprend pas l'intérêt des <input type="hidden"/>

    Tu vourdrais qu'ils se remplissent en fonction de ton select? Si c'est ça il faudra utiliser du javascript pour remplir tes hidden.

    Sinon, sur ta page mission_verif.php, pourquoi tu fais pas une petite requête pour pour récupérer son nom et prénom (comme tu as list_user qui te donne id de l'utilisateur) et puis ça te permet aussi de vérifier que l'utilisateur existe bien.

  5. #5
    Membre expérimenté
    Inscrit en
    Mai 2010
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 177
    Par défaut
    De ce que je peux voir, la façon dont tu construits ta liste, tu ne vas avoir qu'une seule option de disponible. Essaye de cette façon, peut-être que ça va marcher mieux:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <select name="list_user" id="list_user" size=1 >
    <?php
    while($row=mysql_fetch_array($result))
    {
        echo "<option value='" . $row['use_id'] . "'>" . $row['use_nom'] . " " . $row['use_prenom'] . "</option>\n";
    }
    ?>

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 62
    Par défaut Merci pour vos réponses, mais !!
    Une image vaux mille mots

    Voici mon formulaire qui fonctionnait déjà et me donne bien la liste des utilisateurs.



    J'ai légèrement modifié le select suite à des recherches sur le web :

    J'ai juste rajouté les valeurs dans l'attribut value.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <select name="list_user" size=1 >
    <?php while($row=mysql_fetch_array($result))  { ?>
    <option value='<?php echo $row[use_id]; ?>:<?php echo $row[use_nom]; ?>:<?php echo $row[use_prenom]; ?>' ><?php echo $row[use_nom]; ?>&nbsp;<?php echo $row['use_prenom']; ?></option>
    <?php } ?>
    </select>

    Résultat du print_r dans la page mission-verif.php qui ne contient que ce code pour l'instant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    echo "<pre>";
    print_r($_POST);
    echo "</pre>";
    ?>



    Mon seul problème, c'est de récupérer les valeurs use_nom, use_prenom et use_id pour les insérer en base de donnée à partir de la page verif_mission.php qui pour le moment à juste un print_r.

    La page mission_verif.php aura pour objectifs la vérification des données saisie avant l'enregistrement en base et en même temps un envoi de mail à la personne qui part en mission.

    Je ne souhaite pas faire d'autre requête, puisque la personne est sélectionnée dans une liste, donc elle existe obligatoirement, il n'y a pas de vérif à faire.

    Mais saperlipopette, comment récupérer ces variables et l'attribuer correctement ? je n'y arrive pas.

    Je précise que je suis autodidacte et que je débute, c'est du basic, mais je bloque sur ce point.

    Merci encore pour votre aide !

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

Discussions similaires

  1. Réponses: 10
    Dernier message: 06/03/2015, 16h26
  2. Récupération des données d'une zone de liste
    Par Focheur dans le forum VBA Access
    Réponses: 5
    Dernier message: 10/11/2007, 02h27
  3. Critère de requête avec une zone de liste dans un formulaire
    Par Dehez dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 19/06/2006, 13h49
  4. Copier une zone de liste dans excel
    Par geo.mar94 dans le forum Access
    Réponses: 42
    Dernier message: 15/06/2006, 16h34
  5. Réponses: 2
    Dernier message: 08/06/2006, 14h38

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