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 :

Liste déroulante via une bdd


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2022
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2022
    Messages : 46
    Par défaut Liste déroulante via une bdd
    Bonjour à tous,

    J'essaie de construire une liste déroulante ayant pour <option> les éléments de ma base de données.
    Voici mon code, encore très moche...

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     <select name="classe" id="classe_select">
                <option value="all_classe">Toutes mes classes</option>
                <?php $reponse = $bdd->query('SELECT * FROM "lcc.classes" WHERE inscr_ens_num = inscr_ens_num');
                while ($donnees = $reponse->fetch()) {
                ?>
                  <option value="<?php echo $donnees['classes']; ?>">
                    <?php echo $donnees['nom_classe']; ?>
                  </option>
     
                <option value="add_classe" onclick="crea_classe()">Ajouter une classe</option>
              </select>
    je n'arrive pas à trouver les fonctions qui me permettraient de faire apparaître les noms de classes que les enseignants auront enregistré dans ma bdd.

    Un peu d'aide s'il vous plait ?!

    Merci !

  2. #2
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 325
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 325
    Billets dans le blog
    17
    Par défaut
    Il faudrait que tu nous donnes ton schéma et ce que tu obtiens avec ton script. Message d'erreur ? (Voir la source du HTML produit)

    Ton script est moche en effet Je me permets :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php 
      $reponse = $bdd->query('SELECT ALL tes_colonnes FROM ta_table');
      $classes = $reponse->fetchAll();
    ?>
    <select name="classe" id="classe_select">
      <option value="all_classe">Toutes mes classes</option>
      <?php foreach ($classes as $donnees): ?>
        <option value="<?= $donnees['classes'] ?>">
          <?= $donnees['nom_classe'] ?>
        </option>
      <?php endforeach ?>
    </select>
    <button onclick="crea_classe()">Ajouter une classe</button>
    -- Sépare au max HTML et PHP => La syntaxe alternative des structures de contrôle (foreach/endforeach) et le short_echo_tag (<?=) sont parfaits pour cela
    -- On évite les "SELECT *" => On a rarement besoin de toutes les colonnes, et c'est peu évolutif => On nomme les colonnes à projeter
    -- Ta table s'appelle "lcc.classes" ou bien "classes" ? Généralement on évite les "." dans les noms de colonnes/tables/bdd car il s'agit d'un séparateur d'objets
    -- Le WHERE ne sert à rien car tu compares les 2 mêmes colonnes, c'est comme si tu faisais "WHERE 123 = 123"
    -- On évite de mélanger les usages d'un élément de formulaire : le menu déroulant permet de sélectionner 1 classe, ou toutes, pour en créer une nouvelle utiliser un bouton

  3. #3
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2022
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2022
    Messages : 46
    Par défaut
    Merci beaucoup !
    Je n'avais juste aucun affichage et mon HTML disparaissait sous le HTML...

    Je voulais prendre plusieurs colonnes car je souhaitais ranger les classes par niveau (j'ai une colonne niveau_classe dans ma table) pour avoir un truc du genre :
    Toutes les classes
    Sixièmes
    6°1
    6°2
    Cinquièmes
    5°1
    5°2
    ...

    Mais déjà ça affiche les classes de ma bdd, alors encore merci !

Discussions similaires

  1. Liste Déroulante via une macro
    Par XxX_D4rk_K1ll3r_XxX dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 01/06/2017, 12h13
  2. Liste déroulante via une colonne de tableau
    Par DeCastro dans le forum Excel
    Réponses: 5
    Dernier message: 14/01/2015, 12h52
  3. [AJAX] actualiser une liste déroulante via une BDD
    Par Jimmy72_ dans le forum AJAX
    Réponses: 19
    Dernier message: 28/03/2011, 15h45
  4. [MySQL] alimenter une liste déroulante via une requête
    Par stefon dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 13/12/2006, 13h32
  5. [Conception] Création d'un Mailing List via une BDD
    Par Matmax dans le forum PHP & Base de données
    Réponses: 15
    Dernier message: 12/04/2006, 14h23

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