begin process at 2012 05 28 23:03:36
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

AU SECOURS !!!

 > 

faire une recherche par mot clé dans un texte


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

faire une recherche par mot clé dans un texte

jeudi 17 novembre 2005 à 12:37:27 | faire une recherche par mot clé dans un texte

maurimaure

Bonjour,

J'ai des docs en registrés dans ma BDD,  j'aimerais faire des récherches par mots clés sur ces docs enfin de n'en afficher que les docs qui contiennent les mots clé (comme à la google sauf que les expressions que je pourrais saisir peuvent être beaucoup plus compliquées que ce qui propose google).

Alors j'aimerais connaitre votre reflexion ...
 Et si vous connaissez des fonctions php qui me permettent de faire ce traitement ou si un code existe dèja qui permet de faire ça ...

Toutes les idées seront les bienvenues..

PS: cette question je l'ai dèja posé mais elle n'était pas dans le bon forum ...



jeudi 17 novembre 2005 à 12:57:09 | Re : faire une recherche par mot clé dans un texte

malalam

Administrateur CodeS-SourceS
Hello,

si tu veux du complexe, renseigne toi sur les index fulltext de mysql.

Sinon, regarde (tjrs en sql) la clause LIKE
jeudi 17 novembre 2005 à 13:02:39 | Re : faire une recherche par mot clé dans un texte

J_G

Plus complexe que Google !!!!!!!!!

Les recherche de google sont déjà pas mals... Tu peux utiliser les parenthèses, les opérateur &,|,!,+, *, -

tu peux spécifier si le mot doit se trouver dans l'url, le meta description, le cache de google, ...

Tu tape "deux^vingt et un",

ça te sort : deux^vingt et un = deux millions quatre-vingt-dix-sept mille cent cinquante-deux


Enorme !!! non ?


Ceci dit... ça ne fera pas de recherche dans ta base...


JE te joint mon expression régulière qui découpe selon les mots (séparé par espace, point, virgule, ...) mais concerve aussi les expression exacte (entourée par des guillemets double)


J'espère que cela t'aidera... A+



-----------------------------------------------------------------------------
// la string à découper          
$phrase = trim($phrase);

// on décompose la phrase en mots
$m = array();
preg_match_all('@["][^"]+["]|[\S^"]+@', $phrase, &$m);

// l'expression reg sort les ", donc il faut les enlever...
$m = str_replace('"', '', $m[0]);

// pour ne pas chercher douze fois le même mot
$m = array_unique($m);


jeudi 17 novembre 2005 à 16:47:43 | Re : faire une recherche par mot clé dans un texte

maurimaure

Merci pour vos réponses,

Effectivement Google fait dèja beucoup des choses mais je ne pense pas qu'on peut faire une requête du genre "je cherche  'mot1' et 'mot2' qui  sont séparés  par au plus 3  mots"

Et en plus vous me dites que je ne peut pas l'utilisé pour faire des recherche dans ma base alors que je pensais qu'on pouvait le faire car je le voit souvent sur des sites ...

Merci pour l'exp reg je pense que ca va bien m'être utile

Si vous avez d'autres reflexions n'hésitez pas ...


jeudi 17 novembre 2005 à 22:21:01 | Re : faire une recherche par mot clé dans un texte

J_G

"je le voit souvent sur des sites ..."

En effet, mais les recherche google ne se base que sur le contenu textuel des pages afichées (et depuis peu des fichiers pdf, doc, rft, ...)

Heureusement que google n'a pas acces à votre base de données !! (sécurité)


"je cherche  'mot1' et 'mot2' qui  sont séparés  par au plus 3  mots"

Ca sent l'usine à gaz ça !!!! Car, pour faire une recherche, il faut une "double" programmation : une coté PHP (la regexp) puis une autre qoté BDD (avec le fameux LIKE '%mot%')

Aprés, les bases de données moderne fournissent des fonctions puissantes pour manipuler les chaînes de caractères. Mais la programmation SQL n'est pas agréable (de mon point de vue)...

Bonne chance !
vendredi 18 novembre 2005 à 08:18:19 | Re : faire une recherche par mot clé dans un texte

malalam

Administrateur CodeS-SourceS
puis une autre qoté BDD (avec le fameux LIKE '%mot%')

=> ou index fulltext quand on veut vraiment de la puissance (et plus de lenteur...) (mais de la puissance néanmoins... ;-))

Mais la programmation SQL n'est pas agréable (de mon point de vue)
=> dépend quel sql quand même.  Mais de toutes façons, autant limiter le travail e la bdd.
vendredi 18 novembre 2005 à 11:00:57 | Re : faire une recherche par mot clé dans un texte

maurimaure

Est ce que vous ouriez de la doc sur les indexes fulltext?? ou si vous pouvez me dire ca corresponds à quoi car je n'ai jamais eu l'ocasion de l'utilisé ...

Merci encore
vendredi 18 novembre 2005 à 11:45:39 | Re : faire une recherche par mot clé dans un texte

malalam

Administrateur CodeS-SourceS
Hello,

http://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html


vendredi 18 novembre 2005 à 14:34:07 | Re : faire une recherche par mot clé dans un texte

J_G

Note : Bcp de SQL ont des fonctions d'expressions regulières
vendredi 18 novembre 2005 à 14:51:12 | Re : faire une recherche par mot clé dans un texte

malalam

Administrateur CodeS-SourceS
En plus!

Aucune raison de ne pas nous pondre un moteur de recherche plus puissant que celui de google, du coup ;-)


1 2 3

Cette discussion est classée dans : texte, mot, recherche, clé, docs


Répondre à ce message

Sujets en rapport avec ce message

recherche de texte [ par RM50Man ] Bonjour , comment faire pour rechercher du texte par exemple:je veux rechercher un mot qui commence par Aselect * from table where mot = 'A*'On fait c Recherche par mot clé, phrases scindées [ par bilel59 ] Bonjour à tous, je vous expose mon problème, voici la requête en question : Code : <pre class="alt2" di crée un moteur de recherche [ par minoula2006 ] bonjour à tous mon pb c que je veut crée un moteur de recherche mais j'ai pas réussi 1- j'ai crée ma table : recherche les champs: clé , lien et ti recherche avec php + lecteur wav [ par mbik ] Bonjour, J'ai entamé le développement d'une petite application et je suis bloqué. En fait j'ai créé une variable $date qui correspond au nom d'un doss moteur de recherche php [ par walidbnchakroun ] je suis en train de programmer un petit moteur de recherche en php/mysql. Mon problème c'est comment gèrer les AND et OR dans la partie mot clé: J'uti rechercher à signial audio par mot clé son [ par dardarsalma ] Bonjour à tous, j ai eu à chercher un peu partout sans trouver une petite voie à mon problème. Dans une base de données des discours d’hommes politi moteur de recherche bilingue [ par webfattah ] bonjour à tous, je suis en train de développer un site dans deux langue arabe et français. le site comprend un moteur de recherche. pour la version f script pour faire un moteur de recherche [ par aminagu ] bjr tout le monde j etais entrain de chercher d un code source pour faire un moteur de recherche et j ai compris le principe mais j arrive pas a c recherche d'un mot dans une liste [ par woodish ] Bonjour, je suis absolument débutant en PHP mais je m'arrache les cheveux pour aboutir à mon projet. J'ai créé un forum pour les membres d'une allia piocher une image aléatoirement [ par mikouRoux ] Bonjour, Je cherche un moyen pour piocher aléatoirement une image sur internet à partir d'un mot clé. En fait, automatiser en quelque sorte ce que l


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,936 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales