PHP Mysql : Problème sur des jointures de tables avec champs portant le même nom [Résolu/Fermé]

Signaler
Messages postés
52
Date d'inscription
vendredi 13 décembre 2019
Statut
Membre
Dernière intervention
28 juillet 2020
-
Messages postés
52
Date d'inscription
vendredi 13 décembre 2019
Statut
Membre
Dernière intervention
28 juillet 2020
-
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

2 réponses

Messages postés
30608
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
17 janvier 2021
7 234
Bonjour,

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

2
Merci

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

CCM 63550 internautes nous ont dit merci ce mois-ci

Messages postés
52
Date d'inscription
vendredi 13 décembre 2019
Statut
Membre
Dernière intervention
28 juillet 2020

Merci