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 :

Jointure entre deux tables [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 122
    Points : 67
    Points
    67
    Par défaut Jointure entre deux tables
    Bonjour,

    J'aimerais savoir si ma requete est correcte.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $requete = "SELECT * FROM clts_db WHERE user = auth_clts.user"
    Je souhaite selectionner tous les enregistrements de la table clts_db pour lesquels les enregistrements du champ user de cette meme table sont egaux a ceux du champ user d'une deuxieme table nommee auth_clts.

    Merci.

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 091
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 091
    Points : 8 194
    Points
    8 194
    Billets dans le blog
    17
    Par défaut
    Et bien non, tu ne fais pas de jointure ! Pour cela il faut utiliser JOIN :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT mes_champs
    FROM table_1 INNER JOIN table_2 ON table_1.champ = table_2.champ
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  3. #3
    Membre confirmé Avatar de KibitO
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2004
    Messages
    616
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2004
    Messages : 616
    Points : 606
    Points
    606
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $requete = "SELECT * FROM clts_db c, auth_clts a WHERE c.user = a.user";
    Voilà ma façon à moi

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 122
    Points : 67
    Points
    67
    Par défaut
    ok merci.

    Pour etre plus precis voici ce que je voudrais faire.

    J'ai une partie de mon site accessible par mot de passe et identifiant. Ces derniers sont stockes dans une table "auth_clts". Donc chaque personne qui se connectent accedent a leurs donnees stockees dans une seconde table "clts_db"

    En tant qu'administrateur du site, j'aimerais pouvoir avoir acces aux donnes de chaques personnes enregistrees sur mon site pour pouvoir en modifier le contenu si besoin est.

    Je me suis donc cree une page d'administration ou je recupere le nom de chaques personnes inscrites pour en faire des boutons grace au script suivant :
    Code : 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
     
    <?php
    $db_conn = db_connect();
    mysql_select_db('awd_db', $db_conn);
     
    $requete = "SELECT * FROM auth_clts WHERE user != 'admin'";
    $result = mysql_db_query("awd_db", $requete);
     
    if (mysql_num_rows($result)) {
    while ($voir = mysql_fetch_array($result)) 
    	{
    	echo '
    	<tr>
    		<td>
    			<input type="button" value="'.$voir["user"].'" class="blist">
    		</td>
    	</tr>';
    	}
    }
    ?>
    Je souhaiterais en cliquant sur un des boutons recuperer les donnees correspondant a chaque personnes listees sachant que les donnees sont situees dans une autre table que celle avec laquelle j'ai recupere les noms.

    Je ne sais pas si j'ai ete tres clair...

    J'ai effectue plusieurs essais jusqu'à maintenant mais là j'ai épuisé mes idées...

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 26
    Points : 19
    Points
    19
    Par défaut
    Salut,

    Je procederais d une autre maniere.

    Le tout serais sur 2 page :

    - choisirUsager.php
    - modifierInfo.php

    Dans choisirUsager.php tu fais un SELECT * FROM auth_clts pour recuperer le nom de tout le monde et tu les liste sur ta page ( pas dans un bouton, c vraiment encombrant ). Sur chaque nom, tu leur fais un lien en direction de modifierInfo.php, en passant en parametre leur ID ( jespere que chaque membre a un ID): modifierInfo.php?ID=190

    Dans modifierInfo.php, tu recupere le ID avec $_GET["ID"];

    tu fais une requete comme suit :

    SELECT * FROM clts_db WHERE ID = $_GET["ID"]

    Ensuite tu liste tout les info modifiable

    C<est juste une suggestion ( dsl pour le clavier anglais &%*^$$^&)

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 122
    Points : 67
    Points
    67
    Par défaut
    Ok, merci bien pour cette suggession qui m'as l'air finalement assez logique et plus simple que ce a quoi je pensais...

    Quand on reste des heures sur un truc on a pas forcement les idees tres claires

    Pas de probleme pour le clavier qwerty, j'ai pareil

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 29/05/2007, 18h03
  2. Jointure entre deux tables ?
    Par spirit69 dans le forum Access
    Réponses: 2
    Dernier message: 05/12/2006, 20h21
  3. jointure entre deux tables mysql
    Par Invité dans le forum SQL Procédural
    Réponses: 7
    Dernier message: 23/04/2006, 20h08
  4. PROBLEME DE JOINTURE ENTRE DEUX TABLE
    Par DarkMax dans le forum Langage SQL
    Réponses: 13
    Dernier message: 13/01/2005, 15h11
  5. Jointure entre deux tables et résultat
    Par Asdorve dans le forum Langage SQL
    Réponses: 2
    Dernier message: 02/06/2004, 14h50

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