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

Résolu
Jules_2569 Messages postés 61 Statut Membre -  
Jules_2569 Messages postés 61 Statut Membre -
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

  1. jee pee Messages postés 31946 Date d'inscription   Statut Modérateur Dernière intervention   10 003
     
    Bonjour,

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

    2
  2. Jules_2569 Messages postés 61 Statut Membre
     
    Merci
    0