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 :

Confusion de relation entre 2 tables [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 33
    Par défaut Confusion de relation entre 2 tables
    Hello !

    je fais un petit réseau sociale et je me pose une question pour une relation entre 2 tables avec MYSQL !

    J'ai par exemple une table user et une autre friends !
    le but est tous simplement d'ajouter des amis dans son espace membre !
    dans ma logique est un amis est aussi un utilisateur !

    et j'ai donc un doute sur la relation entre les 2 tables

    je dirais pour ma part :

    users : friends = 0,n un user peut avoir de 0 à n friend
    friends : users = et la ou je bloque c'est qu'un amis est lui même user !

    si quelqu'un pouvais m'éclaircir sur la question svp ?

  2. #2
    Membre averti Avatar de Vetchostar
    Développeur Web
    Inscrit en
    Septembre 2005
    Messages
    51
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2005
    Messages : 51
    Par défaut Confusion de relation entre 2 tables
    Puisque un ami peu être lui même un utilisateur pourquoi tu les mets dans les tables différentes?. normalement c'est la même table avec une colonne isfriend ou friendparent.

  3. #3
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Par défaut
    Faut 2 tables :

    User qui contient les users
    et
    Friends : qui contient 2 colonnes : user, userFriend avec les id des users.

    Comme ça tu sais grace a cette table qui est amis de qui.
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  4. #4
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Par défaut
    Citation Envoyé par Vetchostar Voir le message
    Puisque un ami peu être lui même un utilisateur pourquoi tu les mets dans les tables différentes?. normalement c'est la même table avec une colonne isfriend ou friendparent.
    Malheureusement dans ce cas la tu ne gere pas la relation n tu es en 0,1; il faut une table de liaison pour gerer les multifriends
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 33
    Par défaut
    Merci pour votre aides !

    donc il me faut une table users comme c'etait prévu
    avec dedans un champs id_friend par exemple...

    puis une table friends avec un champs user pour faire référence à l'user qui ajoute des amis et un champs user_friends pour ajouter l'user ami

    J'ai bien compris ?

    il faut une table de liaison pour gerer les multifriends
    dans mon cas je veux juste qu'un utilisateur ajoute ses amis pour lui mais pas les partager avec d'autre donc je n'ai pas besoin de table de liaison ?

  6. #6
    Membre éprouvé
    Inscrit en
    Juin 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 52

    Informations forums :
    Inscription : Juin 2009
    Messages : 104
    Par défaut
    la table A : MEMBER
    id_membre
    name
    firstname
    ........

    la table B : FRIEND
    id_friend
    id_membre_base
    id_membre_friend

    à chaque fois qu'un membre M1 (id_membre = 1) veut se faire ami avec un autre membre M2 (id_membre = 2 ou id_membre = 3, ...)
    on crée un ligne dans la table FRIEND qui contient
    id_membre_base = 1
    id_membre_friend = 2 ou 3 ou ...

    Savoir qui sont les amis du membre 1 ?
    un select sur la table FRIEND avec dans le WHERE id_membre_base = 1

    par exemple


    et pour:
    dans mon cas je veux juste qu'un utilisateur ajoute ses amis pour lui mais pas les partager avec d'autre donc je n'ai pas besoin de table de liaison ?
    devient
    dans mon cas je veux juste qu'un utilisateur ajoute ses amis pour lui mais pas les partager avec d'autre donc je n'ai pas besoin de les montrer aux autres !
    chaque membre "a droit à" son SELECT qui recherche ses amis, pas ceux des autres

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 33
    Par défaut
    ok j'ai saisie !

    Merci à tous pour votre aides.

    Bonne fin de journée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Relation entre les tables
    Par mzt.insat dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 14/11/2005, 08h17
  2. [XSD] Relation entre deux tables
    Par fd59 dans le forum Valider
    Réponses: 2
    Dernier message: 09/09/2005, 23h33
  3. Relation entre les tables
    Par adelyx dans le forum Bases de données
    Réponses: 1
    Dernier message: 02/04/2005, 23h06
  4. Relation entre deux tables
    Par manel007 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 04/03/2005, 16h54
  5. [Relations] afficher les relations entre 2 tables
    Par dzincou dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 14/01/2004, 17h07

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