Bonjour,
Je suis en train de créer un tableau avec filtrage dans lequel j'affiche le résultat d'une requête.
J'ai 3 tables :
- une table client (id, lib)
- une table pays (id, lib)
- une table adresse (id,lib,cp,ville,client, pays) où client et pays sont des clés étrangères.
Je souhaiterais afficher la liste des clients avec leur adresse et leur pays, sachant qu'un pays peut ne pas être rentré.
Voici ma requête :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
$sqlClients = "
SELECT c.id, code, c.lib as libclient , cp, ville, p.lib as libpays
FROM clients as c
LEFT JOIN adresses as a ON c.id = a.client
LEFT JOIN pays as p ON a.pays = p.id
WHERE code LIKE '".$_GET[scode]."%'
AND c.lib LIKE '".$_GET[ssociete]."%'
AND cp LIKE '".$_GET[scp]."%'
AND ville LIKE '".$_GET[sville]."%'
AND p.lib LIKE '".$_GET[spays]."%'
LIMIT 0, 30
"; |
En fait cette requête m'affiche que le client qui a un pays.
Lorsque je vire
AND p.lib LIKE '".$_GET[spays]."%'
, ça marche mais par la suite je ne pourais pas faire le tri sur le pays.
J'ai déjà fait ce type de requête avec le même style de table et ça marchait.
Là je comprends pas, c'est pourquoi je fais appel à vous.
Merci d'avance.
Partager