PHP Mysql : Problème sur des jointures de tables avec champs portant le même nom

Résolu/Fermé
Jules_2569 Messages postés 52 Date d'inscription vendredi 13 décembre 2019 Statut Membre Dernière intervention 28 juillet 2020 - 17 déc. 2019 à 16:12
Jules_2569 Messages postés 52 Date d'inscription vendredi 13 décembre 2019 Statut Membre Dernière intervention 28 juillet 2020 - 17 déc. 2019 à 17:00
Bonjour,

Je vous explique ma problématique.

J'ai trois tables avec plusieurs champs dont 1 champs est présent sur les 3 tables.
id_user

Mes 3 tables sont dons liés par l'id_user

	$reponse = $db->query('SELECT * FROM invoice  
       LEFT JOIN utilisateurs ON (invoice.id_user=utilisateurs.id_user) 
       LEFT JOIN statut ON (invoice.id_user=statut.id_user) 

       WHERE  type=1 AND (statut_type=1 OR statut_type=2)    AND   id_user ='     .$_SESSION['id_user'].'  group by id_invoice DESC  ');



J'ai ce message d'erreur


integrity constant violation: 1052 Column 'id_user' in where clause is ambiguous



Certes c'est ambigu d'avoir plusieurs fois le même nom dans des tables, mais du moment ou ont précise le nom des tables auxquels ils appartiennent, il devrait les différencier.

Je pourrais renommer mes 2 autres champs s'il n'est pas possible de les utiliser comme ça.
Merci d'avance
A voir également:

2 réponses

jee pee Messages postés 39585 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 19 avril 2024 9 225
Modifié le 17 déc. 2019 à 16:22
Bonjour,

l'anomalie est sur le WHERE
AND   id_user =
, il faudrait
AND   invoice.id_user=
.

2
Jules_2569 Messages postés 52 Date d'inscription vendredi 13 décembre 2019 Statut Membre Dernière intervention 28 juillet 2020
17 déc. 2019 à 17:00
Merci
0