INNERJOIN remplacer la valeur d'une table par

Jay -  
zoby44 Messages postés 818 Date d'inscription   Statut Membre Dernière intervention   -
Salut,
Salut, voila mon problème:

Sur MySql, j'ai les 3 tables suivantes:

[img]http://tinypic.com/images/goodbye.jpg[/img]

J'aimerais pouvoir afficher avec un script php le nom du membre ("login" dans la table members) et cela en remplaçant l'id_member par le login.

Je pense à utiliser INNER JOIN et recupérer la donnée dans une variable mais en vain.

[code=php]<?php
//connection à la base de données

mysql_connect($host, $bd_login, $bd_pass) or die ("Impossible de se connecter");
mysql_select_db($bd);

// requête

$query = "SELECT * FROM images INNER JOIN members ON members.login = images.id_user WHERE id_member=$id_image"; //id_member=$id_image soit $id_image l'image lié au membre

// recolte du resultat et affichage

$result = mysql_query($query);

while($row = mysql_fetch_row($result)){
$quelquechose = $row[quelquechose]; //la je ne sais pas

}

?>/code

Comment procéder pour remplacer l'id du membre (lié à l'id d'une image) par son nom d'utilisateur (login) ? Je m'y perd completement [^^choc]
A voir également:

1 réponse

zoby44 Messages postés 818 Date d'inscription   Statut Membre Dernière intervention   199
 
Salut. Perso, je n'utilise jamais "mysql_fetch_row", je préfère largement "mysql_fetch_array".

Es tu sur que le champs "id_user" existe bien ? Dans le MCD que tu as joins, il n'apparait pas en tout cas.

J'ai remanié un peu ton code et voila ce que ça donne :
$query =	"SELECT b.login AS log, a.id_image AS img FROM images a
			 INNER JOIN members b
			 ON b.id_member = a.id_member 
			 WHERE b.id_member = $id_image"; 

// recolte du resultat et affichage

$result = mysql_query($query) or die ('Erreur : '.mysql_error() );


while($row = mysql_fetch_array($result)){
$login = $row['log'];
$image = $row['img'];
}

echo $login.'<br />'.$image;


Vu que je suis fainéant, j'ai remplacé le nom de tes tables par des alias (a et b), moins de truc à taper.
Ensuite, j'ai indiqué à la requête quels champs sont vraiment utiles auxquelles j'ai attribué un nom pour pouvoir les appeler facilement avec PHP.

Voila, avec ça, tu devrais pouvoir t'en sortir. J'ai testé et ça fonctionne nickel.
0