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 :

afficher l'item selectionné dans une liste déroulante


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2008
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 16
    Points : 13
    Points
    13
    Par défaut afficher l'item selectionné dans une liste déroulante
    Bonjour à tous,
    Par manque de lucidité, je n'arrive à faire afficher l'item sélectionné dans la liste déroulante!
    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
    <html>
    <head>
    <title>Affiche la liste</title>
    </head>
    <body>
    <h2>Affiche la liste des familles</h2>
    <?php
    require("start.php");
     
    // Requète mysql
    $sql  = "SELECT titre FROM recettes WHERE categorie='Dessert'";
    $req = mysql_query($sql);
    $res = mysql_num_rows($req);  
    echo 'Il y a '.$res.' recettes dans la table.<br>';  
     
    // Affichage des familles
     echo '<FORM NAME="Choix" method="POST">'."\n"; 
     echo '<select size=1 name="titre">'."\n"; 
    // echo '<option value="-1">Choisir une recette<option>'."\n"; 
    for ($i=0;$i<=$res-1;$i++)
    {
    	$lenom= mysql_result($req, $i, 'titre');  
    	echo '<option value=\".$i.\">' .$lenom; 
         	echo '</option>'."\n"; 
    }
     echo '</select>'."\n"; 
     echo '</FORM>'."\n"; 
    ?>
     
    </body>
    </html>
    Merci à tous!

  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
    Points : 44 155
    Points
    44 155
    Par défaut
    Voici ton code revu (attention j'utilise "id" comme nom pour ta colonne id mais elle porte peut etre un autre nom).

    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
     
    $sql  = "SELECT id,titre FROM recettes WHERE categorie='Dessert'";
    $req = mysql_query($sql);
    // Affichage des familles
     echo '<form name="Choix" method="POST">'."\n"; 
     echo '<select size=1 name="titre">'."\n"; 
    // echo '<option value="-1">Choisir une recette<option>'."\n"; 
    while($row = mysql_fetch_assoc($req)) {
          if ($row['id'] == $_POST['titre']) {
                $selected = ' selected="selected" ';
         }
        else {
              $selected = '';
         }
     
    	echo '<option value="'.$row['id'].'"' . $selected . '>' .$row['titre'] . '</option>'."\n"; 
    }
     echo '</select>'."\n"; 
     echo '</form>'."\n";
    Attention sur la facon dont tu procédais : prendre comme reference pour enregistrement, son numero d'ordre de sortie dans la requete c'est des erreurs en perspective. Les index sont la pour identifier facilement un enregistrement.

Discussions similaires

  1. [MySQL] Problème pour garder en mémoire un item selectionné dans une liste déroulante
    Par car0line dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 23/04/2009, 14h26
  2. Réponses: 2
    Dernier message: 29/12/2006, 15h56
  3. Réponses: 1
    Dernier message: 20/12/2006, 16h16
  4. Réponses: 1
    Dernier message: 28/07/2006, 09h17
  5. Réponses: 4
    Dernier message: 27/12/2005, 08h24

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