Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/05/2011, 17h05   #1
Invité régulier
 
Inscription : mai 2011
Messages : 49
Détails du profil
Informations forums :
Inscription : mai 2011
Messages : 49
Points : 7
Points : 7
Par défaut Trouver les mots les plus répétés dans un champ

Bonjour à tous,

J'ai un forum fait maison pour m'amuser et améliorer mes connaissances en php.
Je voudrais, par une requête sql, en php, afficher sur une page les thèmes les plus en vogue : c'est-à-dire afficher les titres sensiblements similaires triés par similarité !

Exemple :

Titres des sujets :
-------------------

Citation:
"ben laden est mort"
"la mort de ben laden"
"faire une confiture à la framboise"
"faire une confiture à la fraise"
"ben laden"
"la confiture à la fraise est trop bonne"
"Ben Laden est-il vraiment mort ?"
Cela afficherait
-------------------
Citation:
Thèmes les plus en vogue =

1 - Ben laden
"ben laden est mort"
"la mort de ben laden"
"ben laden"
"Ben Laden est-il vraiment mort ?"

2 - Confiture
"faire une confiture à la framboise"
"faire une confiture à la fraise"
"la confiture à la fraise est trop bonne"

3 - fraise
"faire une confiture à la fraise"
"la confiture à la fraise est trop bonne"
En gros, je connaît à peu près les requêtes "match against" mais il faut définir une variable, or là il n'y a rien que je puisse définir.

Code :
MATCH (title,description) AGAINST ('ben laden' IN BOOLEAN MODE)
retournerai tous les topics parlant de ben laden, mais comment savoir que ben laden est la combinaison de mots la plus présente dans la table mysql ?

D'avance merci de votre aide !
maxence64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/05/2011, 13h20   #2
Membre à l'essai
 
Homme
Inscription : janvier 2009
Messages : 36
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : janvier 2009
Messages : 36
Points : 21
Points : 21
Ca n'est pas un problème simple que tu peux résoudre à l'aide d'une requête, à mon avis.

Je pense que tu devrais créer un fichier index qui référence pour chaque mot le nombre d'occurrence et l'adresse des posts qui contiennent ce mot.
Et comme tu veux aussi gérer les genres (masculin/féminin), les types (singulier/pluriel) et les déclinaisons des termes (infinitifs conjugués etc...) pour avoir le meilleur index, je te conseille de regarder du coté du tree-tagger qui est capable de "lemmatiser" un terme.

Enuite tu pourra lire de fichier index pour compter les occurrences et savoir comment construire tes "sujets les plus en vogues"

En fin de compte ce que tu veux faire s'appelle IRI ce qui signifie Indexation et Recherche d'Information. C'est un sujet très intéressant et je te souhaite bon courage pour cela !

Guillaume
kayoum est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h11.


 
 
 
 
Partenaires

Hébergement Web