Multi LIKE dans une requête PDO

Eléphant du PHP | 163 Messages

04 juil. 2016, 10:31

Bonjour,

J'ai un petit souci avec une requête SELECT et des LIKE dans mes requêtes pdo.

Quelle est la bonne syntaxe ?

Exempe : SELECT id_client, nom_client, prenom_client, commentaires_client FROM fiches_clients WHERE ... si l'un des mot-clefs est retrouvé dans nom_client, prenom_client, commentaires_client

pour récupérer les mots-clefs j'ai un FOREACH ($keywords as $keyword) { ... }

Vous voyez ma problématique ?

do_ok

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

04 juil. 2016, 11:29

Avec ton foreach tu peux construire ta requête :
SELECT * FROM fiches_clients WHERE 
nom_client LIKE '%motclé1%' OR prenom_client LIKE '%motclé1%' OR commentaires_client LIKE '%motclé1%' OR
nom_client LIKE '%motclé2%' OR prenom_client LIKE '%motclé2%' OR commentaires_client LIKE '%motclé2%' OR
nom_client LIKE '%motclé3%' OR prenom_client LIKE '%motclé3%' OR commentaires_client LIKE '%motclé3%'
...
Sinon, si tu veux quelque chose de + propre, tu pourrais probablement utiliser les fonctionnalités de recherche Fulltext avec l'opérateur MATCH() :
https://dev.mysql.com/doc/refman/5.5/en ... earch.html
Quand tout le reste a échoué, lisez le mode d'emploi...