Partage
  • Partager sur Facebook
  • Partager sur Twitter

plusieurs informations dans une entrée

Sujet résolu
    17 novembre 2010 à 20:18:20

    Bonjour,
    j'ai un problème pour la conception de ma base de donnée. Je m'explique:
    j'ai une table avec plusieurs champs dans celle ci j'ai déjà enregistrer certaines données. Mon problème c'est quand je veux mettre des membres dedans.
    imaginons d'eux partie A et B un membres s'inscrit dans la partie A il prend une entrer déjà créer ou on ajoute son nom et certaines de c'est données ensuite un autre membres c'est inscrit dans la partie B au même coordonner (donc dans la même entrer) mais il n'a pas les même données comment faire pour qu'il ne supprime pas les données du premier membres en sachant que les deux partie ne communique pas entre elles.
    Je précise également que les pages de codes dans la première partie sont identique à la partie B.
    Merci d'avance et bonne soirée.
    Carman
    • Partager sur Facebook
    • Partager sur Twitter
      17 novembre 2010 à 20:58:10

      Mauvaise conception, c'est à l'inscription d'un membre que tu dois ajouter un enregistrement, et non pas en modifier un pour l'ajouter.
      • Partager sur Facebook
      • Partager sur Twitter
        17 novembre 2010 à 22:05:03

        impossible je ne peux pas créer les entrés pendant l'inscription tous simplement parce que sa représente des coordonnées et donc prédéfini l'utilisateur n'a plus qu'a choisir les coordonnées qu'il veut donc les entrer doivent déjà être créer en partie

        un petit morceau de la table pour montrer un peu à quoi sa ressemble

        Image utilisateur
        • Partager sur Facebook
        • Partager sur Twitter
          17 novembre 2010 à 22:28:31

          Si les parties A et B sont indépendantes, pourquoi tu n'as pas une table de localisation pour chaque partie ?
          • Partager sur Facebook
          • Partager sur Twitter
            17 novembre 2010 à 22:47:37

            justement premièrement parce que je ne sais pas comment faire pour signaler dans mes pages de codes quel des deux tables doit être utiliser pour que ma requête enregistre le membres dans la bonne partie.
            deuxièmement parce que cette tables est très imposante, très grosse et donc devoir en créer une pour chaque partie prendrait beaucoup de place
            • Partager sur Facebook
            • Partager sur Twitter
              17 novembre 2010 à 23:03:09

              Alors ton code est mal agencé, si t'es incapable de savoir si à un endroit précis, tu es dans la partie A ou B, c'est problématique.
              Sinon, si tu tiens à ne garder qu'une table de localisation, va falloir créer d'autres tables autour. Est-ce que la relation Localisation <-> Membres est 1,n ou n,n ?
              • Partager sur Facebook
              • Partager sur Twitter
                17 novembre 2010 à 23:29:02

                non non je sais si je suis dans la partie A ou B mais pour mettre dans la table les donnée du membres je dois mettre
                INSERTE INTO nom_table
                or si j'ai deux table différente pour la partie A et B il faudrait changer nom_table en fonction que le membres s'inscrive dans la partie A ou B c'est sa que je ne sais pas comment faire.
                je ne te comprend pas bien avec localisation tu veux dire par la si il y a deux paramètre pour les coordonner c'est à dire (x,y) alors oui il y en a bien deux
                si je ne te répond pas correctement a cette question dsl c'est que je ne te comprend pas bien est ce que tu serais alors me ré expliquer?
                • Partager sur Facebook
                • Partager sur Twitter
                  17 novembre 2010 à 23:41:25

                  Citation : Carman

                  non non je sais si je suis dans la partie A ou B mais pour mettre dans la table les donnée du membres je dois mettre
                  INSERTE INTO nom_table
                  or si j'ai deux table différente pour la partie A et B il faudrait changer nom_table en fonction que le membres s'inscrive dans la partie A ou B c'est sa que je ne sais pas comment faire.



                  Ben en PHP, avec un if c'est vite fait.

                  Sinon, on sait déjà qu'une même localisation peut avoir un ou plusieurs membres. Mais est-ce qu'un membre peut se rajouter dans une ou plusieurs localisations ?
                  • Partager sur Facebook
                  • Partager sur Twitter
                    18 novembre 2010 à 16:58:55

                    j'y ai penser au if mais le problème c'est que sa deviendra vite long si il y a 10 partie
                    oui un membres aura par défaut une localisation mais il pourra également en avoir d'autre en plus après.
                    • Partager sur Facebook
                    • Partager sur Twitter
                      18 novembre 2010 à 19:37:44

                      Bon ben alors t'as pas le choix. Il te faut une table localisation, une table membre, et une table entre qui dit qui est où.
                      • Partager sur Facebook
                      • Partager sur Twitter
                        18 novembre 2010 à 20:12:03

                        je ne te suis pas et tu ferais comment les liens entres les tables?
                        la table localisation ne contiendrais quoi alors?
                        • Partager sur Facebook
                        • Partager sur Twitter
                          20 novembre 2010 à 14:44:59

                          Moi je vois le truc comme ça, en supposant bien sûr que tu as déjà une table où se trouve tout tes membres :


                          Localisation
                          id x y
                          1 10 25
                          2 13 27
                          3 24 2
                          4 56 47



                          LocalisationMembre
                          idLocalisation idMembre
                          1 1
                          1 3
                          4 2
                          3 2



                          Membre
                          id pseudo
                          1 test
                          2 patapon
                          3 canard


                          De cette manière, tu peux voir que test et canard partagent la même localisation, et que patapon en possède plusieurs.
                          La requête magique :

                          SELECT * 
                          FROM Localisation L, LocalisationMembre ML, Membre M
                          WHERE L.id = ML.idLocalisation AND M.id = ML.idMembre
                          


                          Bon, je fais les jointures à l'ancienne, j'ai jamais regardé comment on faisait avec les INNER JOIN mais ça doit être à peu près pareil.
                          • Partager sur Facebook
                          • Partager sur Twitter
                            20 novembre 2010 à 15:35:40

                            parfais merci beaucoup pour ton aide. je ne pouvais pas trouver mieux ;-)
                            merci d'avoir pris le temps de m'expliquer.
                            • Partager sur Facebook
                            • Partager sur Twitter
                            Anonyme
                              20 novembre 2010 à 16:00:48

                              Citation : rotoclap


                              Bon, je fais les jointures à l'ancienne, j'ai jamais regardé comment on faisait avec les INNER JOIN mais ça doit être à peu près pareil.


                              Bah il serait temps de s'y mettre..

                              D'ailleurs si tu nommais correctement les colonnes ça irai mieux.
                              - Remplace "id" par "idLocalisation" dans la table Localisation.
                              - Remplace "id" par "idMembre" dans la table Membre

                              Il reste plus qu'à faire ça:

                              SELECT *
                              FROM Membre
                                NATURAL JOIN LocalisationMembre
                                  NATURAL JOIN Localisation;
                              


                              Facile non ?
                              • Partager sur Facebook
                              • Partager sur Twitter

                              plusieurs informations dans une entrée

                              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                              • Editeur
                              • Markdown