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 :

Creation Champ à partir d'une autre table


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2006
    Messages
    528
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Octobre 2006
    Messages : 528
    Par défaut Creation Champ à partir d'une autre table
    Bonjour à tous,

    Voici ma question. Dans MySQL, J'ai 2 tables, 1) principale 2) comite.
    La table "principale" reprends la saisie complète et la table "comite" reprends l'ensemble des comités (avec id et champs vachar).

    Je voudrais créer dans la table "principale" un champs appelé "comite" de type liste déroulante, qui irait chercher les données dans la table "comite". Je ne sais pas comment faire la relation entre ces deux tables. Je sais que c'est possible mais je n'ai pas trouvé comment faire.

    Merci pour vos réponses.

    Bibi 28

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 668
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 668
    Par défaut
    il y a aura bien un seul comité par ligne dans principal (je n'ai pas bien compris ce que c'est) ?
    si c'est ça, la 1re étape est d'ajouter une colonne id_comite dans la table principal. cette colonne contiendra uniquement l'identifiant du comité.

    ensuite vous parlez d'une liste déroulante, est ce que vous avez déjà une page d'édition d'un enregistrement de principal ?

  3. #3
    Membre éclairé
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2006
    Messages
    528
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Octobre 2006
    Messages : 528
    Par défaut
    Bonjour,

    Je vais développer: Dans ma table principale, c'est la que les données de tous les adhérents sont stockées. Chaque adhérent, est rattaché à un comité (région: Ouest, Sud, Sud Est...), on appelle cela des comités.
    Dans la table comite, j'ai saisi l'ensemble des comités, 1 par ligne ( 1 comité est égal à une région).

    Dans la table principale, je voudrais créer un champ "comite" qui irait chercher la liste des comités: ex: Mr Dupont serait du comité "ouest" et "Durand" du comité "Est". Lorsque Mr Dupont va saisir ces informations, sur le champ "comite" il aurait un "Type" Enum ou il pourrait choisir le comité qui correspond à sa région.

    Pour l'instant je n'ai rien construit.

    Merci pour votre réponse.

  4. #4
    Membre chevronné
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2022
    Messages
    319
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Ille et Vilaine (Bretagne)

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

    Informations forums :
    Inscription : Juin 2022
    Messages : 319
    Par défaut
    Bonjour,
    Rien de clair dans l'explication. :')

    Table principale : Adhérent

    Table comité : Région

    Donc un adhérent appartient à une seul et unique région.

    Pour faire le lien, c'est comme ce que mathieu à évoqué, un id_comité dans la table principale



    Dans la table principale, je voudrais créer un champ "comite" qui irait chercher la liste des comités
    Ca c'est la logique à mettre dans ton front end. Une liste incrémenter par les entrées présentes dans ta table comité

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT libelle FROM comite;

    Formalise toutes tes règles métiers , tes acteurs / termes propres à ton projet parce que sinon, de une ce sera pas clair pour toi, et de deux encore moins clair pour nous autres.
    Du style commence à définir ce dont t'on application va utiliser :
    - Adhérant ( principale)
    - Région ( comité)

    Ensuite quel relation entre les entités et pourquoi ?


    Cdt,
    Un problème sans solution est un problème mal posé. (Albert Einstein)

  5. #5
    Membre éclairé
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2006
    Messages
    528
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Octobre 2006
    Messages : 528
    Par défaut
    Voila l'exemple,STRUCTURE TABLE comite.docxSTRUCTURE TABLE comite.docx

    Je n'arrive pas a comprendre la mise en place dans la Table "Principale", pour récupérer les données de la Table "comite"

    Merci pour votre aide.

  6. #6
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 322
    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 322
    Billets dans le blog
    17
    Par défaut
    Tes tables doivent être définies ainsi :
    comite (id, nom)
    principale (id, nom, prenom, email, id_comite)

    principale.id_comite est une clef étrangère vers comite.id qui contiendra l'ID du comité de chaque l'adhérent.

    Dans ton formulaire HTML pour la création d'un adhérent et le choix du comité :

    <?php $comites = $pdo->query('select all id, nom from comite')->fetchAll(); // A adapter ?>
    Choix du comité :
    <select name="id_comite">
      <?php foreach ($comites as $comite): ?>
        <option value="<?= $comite['id'] ?>"><?= $comite['nom'] ?></option>
      <?php endforeach ?>
    </select>
    Ensuite pour récupérer tes adhérents et leur comité il faudra faire une jointure :

    select all p.id, p.nom, p.prenom, p.email, c.id as id_comite, c.nom as nom_comite
    from principale as p
    inner join comite as c on p.id_comite = c.id;
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

Discussions similaires

  1. UPDATE d'un champs à partir d'une autre table
    Par choupeo dans le forum Langage SQL
    Réponses: 3
    Dernier message: 21/12/2007, 14h50
  2. Réponses: 1
    Dernier message: 04/10/2007, 16h35
  3. Création d'une table à partir d'une autre table en VB6
    Par mqsi dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 20/07/2007, 14h22
  4. remplir un champ d'une table à partir d'une autre table
    Par MrsFrizz dans le forum Langage SQL
    Réponses: 4
    Dernier message: 11/02/2005, 16h48
  5. Réponses: 3
    Dernier message: 09/07/2004, 10h23

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