Jointure en php [Fermé]

Signaler
-
 sedhiara -
Salut,

Je voudrai savoir comment on fait 1 jointure entre 2 tables en php
car ce que je fé moi, ca marche pas:

$sql="Select nomclient, nomproduit from Client, Produit
where Client.refclient=Produit.refclient";

Merci
A voir également:

9 réponses

pour elodie

utilise ceux ci:
SELECT nomclient,nomproduit
FROM Client INNER JOIN Produit
ON Client.refclient=Produit.refclient
WHERE //votre condition pour ceet requete


test le après
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 63550 internautes nous ont dit merci ce mois-ci

j'ai un forum a faire en php postgresql j'ai petit soucis j'ai deux table sql l'une identifiant et nom du sujet et l'autre identifiant du sujet et message j'aimerai pouvoir sortir le message de la deuxieme table en connaissan le nom du sujet tout cela en php j'ai essayé cela : $query = "SELECT message FROM Sujet, Message WHERE num_sujet = num_sujet";
ca marche pas donc je c plus koi faire
Messages postés
2898
Date d'inscription
jeudi 26 avril 2001
Statut
Membre
Dernière intervention
21 mars 2013
499
Bonjour :)

Tu dois avoir une ambigüité dans ta requête. Essaie de préfixer les champs avec les tables comme ceci :
$query = "SELECT message FROM Sujet, Message WHERE Sujet.num_sujet = Message.num_sujet";
Messages postés
20
Date d'inscription
samedi 20 octobre 2007
Statut
Membre
Dernière intervention
23 janvier 2011
2
"$sql="Select nomclient, nomproduit from Client, Produit
where Client.refclient=Produit.refclient"; "


Dans la requete il y a une selection particulière de colonnes (nomclient, nomproduit ) et ensuite il y a une jointure sur refclient or reclient n'a pas été selectionné.

$sql="Select nomclient,refclient, nomproduit from Client, Produit
where Client.refclient=Produit.refclient";

ou

$sql="Select * from Client, Produit
where Client.refclient=Produit.refclient";

Le sujet date mais si ça peut aider d'autres personnes.
Messages postés
9
Date d'inscription
samedi 4 janvier 2003
Statut
Membre
Dernière intervention
19 février 2003

Bah la syntaxe général est bonne mais t'oublie les majuscule la.
Faut faire
SELECT nomclient, nomproduit FROM Client, Produit
WHERE Client.refclient=Produit.refclient

Et la ca devrait marcher.
Messages postés
2898
Date d'inscription
jeudi 26 avril 2001
Statut
Membre
Dernière intervention
21 mars 2013
499
sha : les commandes SQL sont insensibles à la casse. Les majuscules ne devrait avoir aucun rôle à jouer là-dedans.
En revanche, les noms de tes champs et tables doivent avoir la bonne casse.

elodie : La syntaxe de ta requete est correcte. Exécute-la et affiche les erreurs que tu as :

$sql = "SELECT nomclient, nomproduit FROM Client, Produit
WHERE Client.refclient=Produit.refclient";
print $sql."<br>";
$res = mysql_query($sql) or die ("Erreur : ".mysql_error());

Bobinours... comment peux-tu savoir qu'elodie utilise MySQL????
(ca peut tout aussi bien etre Sybase, Postgres ou interbase pour ne citer qu'eux ;-)
comment on fait 1 jointure entre 2 tables en php

La réponse est : IMPOSSIBLE !

Tu confonds PHP et SQL selon moi ;)

Pour t'aider a résoudre ton probleme, il faut que tu spécifies quel SGBD tu utilises sinon cest impossible de taider a écrire ta requete SQL !
filipo:Bobinours c que j'utilise mysql car ce n'est pas la premiere fois que je lui demande conseil. c tout.
Et pour reprendre ta réflexion, "Tu confonds PHP et SQL selon moi ;) ", c que moi je me sui comprise et je c trè bien la diférence qu'il y a. T'auré pus me demandé une explication aulieu de monté sur té grand chevo :)

Bobinours: Merci, ta propposition ma aidé et g réussi a faire fonctionner ma requête.
Mé g toujours pa compris pourkoi elle marché pas hier mé ce matin oui. Peu etre qu'1 nuit de sommeil ma fé du bien.
Messages postés
2898
Date d'inscription
jeudi 26 avril 2001
Statut
Membre
Dernière intervention
21 mars 2013
499
filipo : voilà :-)

Ceci dit, elodie, que tu te comprennes, c'est bien, mais que les autres te comprenne, c'est mieux :o)


pourkoi elle marché pas hier mé ce matin oui.

Aaaaah... Les mystères de l'informatique... :-)
"les commandes SQL sont insensibles à la casse. Les majuscules ne devrait avoir aucun rôle à jouer là-dedans"

Euh, je suis désolé mais, en SQL sous oracle, les commandes SQL sont très sensibles a la casse.