Bonjour,
Je fais un projet de "gallerie photos" ou j'ai une table "photos" qui contient simplement les champs Num(INT), NomFichier(VARCHAR) ,MotsCles(TEXT). J'ai fait une clé FULLTEXT sur les champs NomFichier et MotsCles. Les mots clés sont séparés par des éspaces.
J'essaye depuis maintenant quelque jour de comprendre comment fonctionne la recherche en texte intégral (FULLTEXT) dans MySQL.
Pour ça j'ai d'abord fait des tests "à l'aveugle" qui n'étaient pas très concluant.
Ensuite, j'ai suivis l'explication du Manuel MySQL qui se trouve ici.
En utilisant le premier exemple ça fonctionne normalement :Mais si je souhaites simplement changer le mot clé "database" par un autre mot contenu dans des enregistrements (ex: 'mysql'), il execute la requete sans erreur mais me renvoie 0 résultat :-(
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT * FROM articles WHERE MATCH (title,body) AGAINST ('database');Ensuite j'ai essayé avec IN BOOLEAN MODE et ça fonctionne pour ce cas précis :
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT * FROM articles WHERE MATCH (title,body) AGAINST ('mysql');Mais lorsque j'essaye de faire une recherche dans mon projet "réel" (ma galerie photos), ça ne fonctionne pas du tout (La requete s'execute toujours sans erreur mais avec 0 résultat).
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT * FROM articles WHERE MATCH (title,body) AGAINST('mysql' IN BOOLEAN MODE);
Je ne comprends pas mon erreur. J'ai trouvé pas mal de messages sur ce forum parlant de ce sujet mais je n'ai pas trouvé pour autant la solution.
Est-ce que qq'un peut m'expliquer ou me donner un site ou je pourrais résoudre mon problème ?
Merci d'avance
Kosti
Partager