Page 1 sur 1

probleme avec une requete join

Posté : 17 avr. 2015, 10:33
par jaayap'
Bonjour à tous et merci de lire ce message,

Voila mon soucis : je dois récupéré des données d'une base à l'aide d'une jointure et les afficher dans une page
seulement je ne sais pas comment afficher le résultat et je n'ai rien trouvé de réellement similaire sur le net.

Voila mon code :
//Connexion à la bdd
$conn_objet_perdu = mysqli_connect('localhost', 'root', '', 'bdd_objet');
//Requête qui fonctionne (testé sous phpmyadmin) :
$requete = "select ob.identifiant,ty.libelle,co.libelle from objet as ob
join type as ty where ob.type = ty.id_type
join couleur as co where ob.couleur = co.id_couleur";

$resultat = mysqli_query($conn_objet_perdu,$requete);
// voila ma fonction actuelle qui ne fonctionne que pour les requêtes simples, sans jointure :

foreach ($resultat as $ligne) {

foreach ($ligne as $valeur){

echo $valeur." ";

}
}
}

Re: probleme avec une requete join

Posté : 17 avr. 2015, 11:57
par yann18
bonjour,

Remplaces la clause WHERE par ON afin de spécifier les colonnes jointes

Re: probleme avec une requete join

Posté : 17 avr. 2015, 11:58
par Ryle
Hello,

Il n'y a aucune différence pour php entre une requête avec jointure ou une requête sans jointure. La requête est exécutée par le moteur de base de données et retourne les différentes colonnes demandées, que celles-ci proviennent d'une seule table ou de trois :)

Le code à utiliser pour parcourir les résultats de ta requête est donc rigoureusement le même.

Si celui-ci ne fonctionne pas, c'est que ta requête ne te retourne pas les bons résultats. As-tu essayé d'exécuter ta requête directement sur ta base de données pour vérifier les résultats retournés ? Est-ce que celle-ci génère des erreurs ?

Edit : bon ben voilà, à vouloir tout expliquer, je me suis fait griller par Yann :p

Re: [RESOLU] probleme avec une requete join

Posté : 17 avr. 2015, 12:58
par jaayap'
merci beaucoup !
quel faute bête ! olala ^^

Re: [RESOLU] probleme avec une requete join

Posté : 17 avr. 2015, 14:16
par jaayap'
Cependant , il me reste un soucis lors de l'affichage, je n'ai que deux colonne au lieu de trois (il ne prend pas en compte le champs du milieu soit : ty.libelle )
auriez vous une idée de où cela pourrait venir ?