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 :

Menu déroulant dynamique


Sujet :

PHP & Base de données

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2013
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Menu déroulant dynamique
    Bonjour, j'ai un petit problème. J'ai un menu déroulant "statique", que je voudrais rendre dynamique. Il faudrait que ce menu déroulant aille chercher dans ma base de données.

    En statique ça donne ceci :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <div class="ligne">
     
                <label class="w150px">Type de Courrier<span class="obligatoire">*</span> : </label><span class="zone_champ_saisie"><select name="letter_type_id">
                <option value="1" <?php if($letter->letter_type_id == 1) {echo 'selected="selected"';}?> >Courriers Assurés </option>
                <option value="2" <?php if($letter->letter_type_id == 2) {echo 'selected="selected"';} ?> >Courriers Tiers </option>
                <option value="3" <?php if($letter->letter_type_id == 3) {echo 'selected="selected"';} ?> >Courriers Témoins </option></select></span><br />
     
                <label class="w50px">&nbsp;</label><span class="exemple">(Type de Courrier dans lequel le courrier va apparaitre dans l'arborescence)</span>
    </div>

    Je vous avoues que c'est assez compliqué à expliqué, je vais quand même essayer . Donc ! J'ai une table "claim_letters_types", puis une table "claim_letters" . Chaque courriers de "claim_letters" est relié est relié par l'ID du type de courrier (claim_letters_types), par le champ "letter_type_id" de la table "claim_letters".

    Dans une page admin du site, je peux créer, supprimer, modifier les infos de la table. Dans la création d'un courrier, il y a CE menu déroulant dans lequel je souhaite que l'utilisateur choisisse a quel type de courrier ce courrier va appartenir (par son ID forcément).

    Une petit idée ?

    Merci à ceux qui m'aideront !

  2. #2
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2008
    Messages : 64
    Points : 98
    Points
    98
    Par défaut
    Salut,

    Je t'invite à te tourner vers AJAX. Je te laisse te débrouiller, ça sera bien plus galère pour toi mais beaucoup plus efficace que si on te donne un code tout prémaché ...

    Une libraire javascript intégrant des fonctionnalités AJAX :
    http://jquery.com.

    Bon courage !

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2013
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Merci du conseil, mais j'ai déjà essayé en Jquery, je suis vraiment débutant en la matière. Je n'y suis pas parvenu. . Tu pourrais pas me mettre un peu sur la voie ?

  4. #4
    Membre averti Avatar de bourvil
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : Israël

    Informations forums :
    Inscription : Juin 2002
    Messages : 411
    Points : 329
    Points
    329
    Par défaut
    Salut

    tu n'as pas besoin de java pour faire ca.

    je te donne les etapes a suivre

    1. recuperer toutes les valeurs de la table "claim_letters_types" ds un array
    2. creer le "select" avec les valeur recuperees. la value de l'option sera l'id de ta table "claim_letters_types".
    Franchement, je suis capable du meilleur comme du pire, mais, dans le pire, c'est moi le meilleur.
    Coluche

  5. #5
    Membre habitué
    Homme Profil pro
    Webmaster
    Inscrit en
    Juin 2010
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cambodge

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Juin 2010
    Messages : 221
    Points : 144
    Points
    144
    Par défaut
    Je confirme que tu n'as pas besoin de jQuery. Sauf si tu désires liens des listes déroulantes entres elles.

    Un coup de pouce pour toi car j'ai aussi galérer au début:

    Je pars du principe que ta connexion à ta base est établie.

    Code php : 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
     
    $mysqli = new mysqli("localhost", "user", "pass", "ta-base")
    $query = "SELECT tes-champs FROM Type-de-Courrier";
    $result = $mysqli -> query($query);
     
    //Là tu commences ton select
    echo '<select name="le-nom">';
    //ta boucle qui va récupérer tes resultats
    while($row = $result->fetch_object()){
         if($row -> le_champ_de _ta_valeur == $letter -> letter_type_id){
              $selected = 'selected="selected"';
         }else{
              $selected = '';
         }
         echo '<option value="'.$row -> le_champ_de _ta_valeur.'" '.$selected.'>'.$row -> le_nom_de_ta_valeur.'</option>';
    }
    echo '</select>';

    Pour Mysqli:

    http://php.net/manual/en/mysqli.query.php

  6. #6
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2013
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Je vais essayé ça de ce pas ! Merci Beaucoup

  7. #7
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2008
    Messages : 64
    Points : 98
    Points
    98
    Par défaut
    Salut,

    Autant pour moi, je pensais que tu voulais charger dynamiquement des données en fonction de ton select, sans recharger la page. J'ai mal lu !

    tu n'as pas besoin de java pour faire ca.
    Java et JavaScript sont deux choses bien distinctes, attention

Discussions similaires

  1. Réponses: 10
    Dernier message: 22/03/2007, 08h36
  2. [MySQL] menu déroulant dynamique
    Par heteroclite dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 25/10/2006, 20h16
  3. menu déroulant dynamique
    Par jojo971 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 22/06/2006, 14h43
  4. [Conception] Menu déroulant dynamique et administrable
    Par guy2004 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 16/05/2006, 15h37

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