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 valeur variable spécifique de liste déroulante dynamique [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    526
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 526
    Par défaut Récupération valeur variable spécifique de liste déroulante dynamique
    bonjour,

    Je vous explique mon petit problème.
    J'ai réalisé une liste déroulante dynamique permettant d'afficher comme résultat sur une même ligne 3 valeurs issues de trois variables de ma table à l'aide de ce 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
    $sqlnom = " SELECT NomEtudiant, PrenomEtudiant, IdEtudiant FROM etudiant WHERE (NomFormation='$formation' AND DateFormation='$annee')"; 
    $result = mysql_query($sqlnom) or die("Erreur dans la requête sur la table etudiant"); 
     
    <FORM  name="formulaire2"  action="note.php" method="post">
    <p>
    <br><br>
     
    <label for="NomEtudiant">Etudiants de cette formation : </label><select name="NomEtudiant">
    <?php
    //Génération de la liste dynamique pour les étudiants
    while ($row=mysql_fetch_array($result)) 
    { 
    echo"<option>".$row[0]." ".$row[1]." - ".$row[2]."</option>"; 
    //echo"<option>".$row[0]."</option>"; 
    } 
    ?>
    </select>
    </p>
    </FORM>
    Pour récupérer la valeur totale du champ dans une variable php lors de la soumission du formulaire, il n'y a pas de soucis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php 
     
    if (isset ($_POST['VALIDATION'])){
     
    $nomEtudiant=$_POST['NomEtudiant'];
     
    }
    ?>
    Par contre, comment je peux faire pour récupérer juste la valeur du troisième champ, cad IdEtudiant dans une variable php séparée?

    Si qq a une idée, merci.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    La vraie bonne méthode consiste a passer uniquement l'id par le formulaire et à relire les informations correspondant à cet id à l'arrivée.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2010
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2010
    Messages : 20
    Par défaut imagine
    J'aimagine que cela correspond à $row[2] ?

    Dans ce cas je te suggère un bon vieux substr()

    Je te donne comment je le ferais:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $etudiantId = substr( $_POST['NomEtudiant'], (strpos( $_POST['NomEtudiant'], "-" )+1) )
    Le +1 après le strpos est là parce que tu sembles avoir mis un espace après le "-" dans ta chaîne de caractère. Si il n'y en a pas, enlève le +1.

    Ou tu peux faire comme sabotage a dit

    Par contre je préfère faire le moins de requête SQL possible mais c'est personnel

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Par contre je n'avais pas vu mais il faut que tes <options> aient une "value" sinon tu ne passes rien.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    526
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 526
    Par défaut
    Ok merci tous les deux

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

Discussions similaires

  1. [MySQL] Récupération valeur issue de liste déroulante dynamique
    Par stefsas dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 24/02/2010, 12h08
  2. Réponses: 5
    Dernier message: 04/12/2008, 15h58
  3. récupérer la valeur d'une liste déroulante dynamique
    Par grinder59 dans le forum Général JavaScript
    Réponses: 21
    Dernier message: 23/01/2006, 17h51
  4. Récupération de la valeur visible d'une Liste déroulante
    Par Yaz dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 26/10/2004, 12h01

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