Comment faire une recherche multimots?

Eléphanteau du PHP | 19 Messages

23 mars 2009, 18:53

Bonjour,
Je pensais trouver sur Google, mais rien à cette heure ci.
Je veux inclure plusieurs critères,plusieurs mots dans la barre de recherche unique et afficher le résultat trouvé.
Ex:plage cannes Résultat:doit afficher les résultats des champs contenant "plage" et "cannes" de la même table.
Je pensais utiliser "simplement" AND ou OR mais ça n'a pas l'air d'être la bonne formule...
Si quelqu'un peut me guider...
Je suis sur WAMP
Merci

Code : Tout sélectionner

$table = "resto"; // Table à sélectionner dans la base $champ = "city"; // Champ de la table à afficher pour tester ce script $champ2 = "title"; $champ3 = "id"; $sql = "SELECT city, title,id FROM $table WHERE $champ,$champ2 LIKE '%".addslashes($recherche)."%' OR $champ2 LIKE '%".addslashes($recherche)."%' ORDER BY title";

...en esperant que ce bout de code soit suffisant
La recherche est en POST
Merci

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

23 mars 2009, 19:52

Bonjour,

Regarde du côté des fonctionnalités "full-text" de ta base de données et notamment l'utilisation de MATCH(), ça devrait te simplifier grandement la vie.
http://dev.mysql.com/doc/refman/5.0/fr/ ... earch.html
Quand tout le reste a échoué, lisez le mode d'emploi...