Bonjour,
J'ai une requête qui permet de rechercher selon des critères dans la BDD et retour le résultat à afficher. le souci est que la requête marche pas lorsqu'elle faire à partir des variable enoyées à la fonction de recherche. Mais quand je saisi directement dans la fonction les valeurs des variable tous est bon.
Après 2h de je ne comprend pas toujours à est le due le problème.

Fonction recherche avec variable qui ne renvoie rien

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
if(!empty($_GET['article'])) {
	$list = searchArt2('code', $_GET['article'], $_SESSION['lang'], $_SESSION['lieu']);
}

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
function searchArticle($filter, $info, $lang, $lieu) {
   $q = 'SELECT * FROM article WHERE '.$filter.' = "'.$info.'" AND lang = "'.$lang.'" AND lieu ="'.$lieu.'"' ;
   $q = $connect_db->query($q);
   $q->setFetchMode(PDO::FETCH_OBJ);
   $list = $q->fetchAll();
 
   return $list;
}
Par contre cette requête fonctionne

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
function searchArticle($filter, $info, $lang, $lieu) {
   $q = 'SELECT * FROM article WHERE code = "prg" AND lang = "fr" AND lieu = "ld"' ;
   $q = $connect_db->query($q);
   $q->setFetchMode(PDO::FETCH_OBJ);
   $list = $q->fetchAll();
 
   return $list;
}
NB: voici le contenu de la requête qui marhce pas :
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
SELECT * FROM article WHERE code = "pgr" AND lang = "fr" AND lieu ="ld"