cs_piep14
Messages postés345Date d'inscriptionlundi 15 mars 2004StatutMembreDernière intervention13 mai 2011
-
25 avril 2006 à 16:49
cs_piep14
Messages postés345Date d'inscriptionlundi 15 mars 2004StatutMembreDernière intervention13 mai 2011
-
25 avril 2006 à 17:54
Bonjour, je n'arrive pas a trouver le moyen de recherche dans ma base de données selon : Par exemple
Dans ma base de données, j'ai :
id | nom
1 | chat noir
Je voudrais faire une requete qui me permet si je recherche "chat noir" ou encore "noir chat" d'afficher ce champs.
Mais également, si je tape "chat" ou "noir", mais au niveau de la pertinence, la requete précédente sera afficher en premier !
J'espère mettre fait comprendre.
Merci de votre aide
cs_piep14
Messages postés345Date d'inscriptionlundi 15 mars 2004StatutMembreDernière intervention13 mai 2011 25 avril 2006 à 17:54
J'ai trouvé qu'il fallait plutot utiliser MATCH !
Code :
mysql_query("SELECT *, MATCH (nom,email,telephone,portable) AGAINST ('$search' IN BOOLEAN MODE) AS cpt FROM contact WHERE MATCH (nom,email,telephone,portable) AGAINST ('$search' IN BOOLEAN MODE) ORDER BY cpt DESC");
J'ai par exemple dans email :
test@yahoo.fr
adressetest@yahoo.fr
La requête fonctionne presque sauf que si je recherche test@yahoo.fr, la requete me retourne les deux !