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éaliser une liste déroulante sur 3 niveaux provenant de 3 tables jointes mysql [Fait]


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 15
    Points : 8
    Points
    8
    Par défaut réaliser une liste déroulante sur 3 niveaux provenant de 3 tables jointes mysql
    Bonjour à tous,

    Je cherche à réaliser une liste déroulante sur 3 niveaux qui comporterait la categorie, la sous categorie, et la specialite. Ces enregistrements étant liés dans mysql (tables INNODB).Après multiples recherches je n'ai rien trouvé de similaire et je ne sais pas comment relier ces 3 requetes pour une seule liste déroulante.Si quelqu'un pouvait m'aiguiller! merci

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 138
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 138
    Points : 1 504
    Points
    1 504
    Par défaut
    Une solution élégante est l'utilisation d'ajax , je te conseille ce tutoriel:

    http://siddh.developpez.com/articles/ajax/

    qui répondre certainement à nombreuses de tes questions.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 15
    Points : 8
    Points
    8
    Par défaut
    merci pour la réponse mais je sais lier des listes déroulantes entre elles même sans ajax, j'aurais souhaité faire plutôt qu'une seule liste déroulante

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 138
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 138
    Points : 1 504
    Points
    1 504
    Par défaut
    Ah ok, c'est ce qu'il m'avait semblé en te lisant une première fois mais je sais pas pourquoi je suis parti sur plusieurs listes. Bref.
    Il faudrait donc que tu fasses une requete SQL capable de te rapatrier toutes les spécialités avec leur cat et sous cat.

    Cela dépend donc de l'architecture de tes tables, peux tu nous donner la structure des tables cat et spécialités alors ?

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 15
    Points : 8
    Points
    8
    Par défaut
    je te donne même les 3 tables :


    Code SQL : 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
    CREATE TABLE IF NOT EXISTS Categorie
    (
    IdCategorie int(2) UNSIGNED ZEROFILL NOT NULL auto_increment,
    NameCategorie varchar(50) NOT NULL,
    PRIMARY KEY(IdCategorie)
    )TYPE=InnoDB;
     
    CREATE TABLE IF NOT EXISTS SousCategorie
    (
    IdSousCategorie int(3) UNSIGNED ZEROFILL NOT NULL auto_increment,
    NameSousCategorie varchar(50) NOT NULL,
    Categorie_id int(2) UNSIGNED ZEROFILL NOT NULL,
    index(Categorie_id),
    PRIMARY KEY(IdSousCategorie),
    FOREIGN KEY(Categorie_id) REFERENCES Categorie(IdCategorie) ON DELETE CASCADE ON UPDATE CASCADE
    )TYPE=InnoDB;
     
    CREATE TABLE IF NOT EXISTS Specialite
    (
    IdSpecialite int(3) UNSIGNED ZEROFILL NOT NULL auto_increment,
    NameSpecialite varchar(50) NOT NULL,
    NameDomaine varchar(50) NOT NULL,
    SousCategorie_id int(3) UNSIGNED ZEROFILL NOT NULL,
    index(SousCategorie_id),
    PRIMARY KEY(IdSpecialite),
    FOREIGN KEY(SousCategorie_id) REFERENCES SousCategorie(IdSousCategorie) ON DELETE CASCADE ON UPDATE CASCADE
    )TYPE=InnoDB;

Discussions similaires

  1. Selectionner une valeur dans une liste déroulante sur le net avec vba
    Par zneidi77 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 20/06/2012, 15h48
  2. [MySQL] Indexer une liste déroulante sur le champ d'une table
    Par RootsRagga dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 01/12/2008, 21h39
  3. Réponses: 4
    Dernier message: 20/12/2007, 10h40
  4. Réponses: 7
    Dernier message: 03/12/2007, 15h37
  5. Comment réaliser une liste déroulante à deux niveaux !?
    Par Dubbiker dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 01/07/2007, 11h51

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