Comment creer un moteur de recherche ? [php] - PHP - Programmation
Marsh Posté le 19-01-2003 à 16:47:47
Code :
|
simple exemple
Marsh Posté le 20-01-2003 à 21:40:18
Ca m'interesse moi aussi. Mais je sais pas du tout comment ça fonctionne... Ca marche avec des mots clefs?? C'est pour mon site : http://rogerone.free.fr
Marsh Posté le 02-04-2003 à 16:23:40
Ce que je comptes faire pour mon site :
Pour chaque phrase, découpe pour avoir un tableau de mot.
Je vire tout les doublons.
Je vires les mots appartenant à une liste donné. (afin d'éliminer les mots du genre "le" )
Pour chaque mot, je ne gardes que les 6 premiers caractères que je stockes dans une table (dont la structure suit plus bas) avec le numéro de message corespondant.
Structure de la table :
id integer
texte char 6
num_message integer
Pour la recherche, je prends chaque mot choisit, je gardes les 6 première lettres pour rechercher dans la table ci dessus et le mot complet pour chercher sur la table des messages.
Pour la sous partie à 6 caractère, je fait une copie de la lsite en remplaçant le dernier caractère par le caractère suivant dans l'ordre alphabétique (exemple omega devient omegb)
Je lance la requête suivante : (pas testé donc peut être avec de petites erreurs)
SELECT mess_id,mess_texte
FROM tab_recherche,tab_message
WHERE mess_id=id
AND ( texte>="omega"
AND texte<"omegb"
AND upper(mess_texte) like "OMEGA" )
Les trois dernières lignes sont a répété pour chaque mot.
Si tous les mots recherchés font partie des mots interdits (non significatif) il ne sert à rien de lancer la requête et on prévient l'utilisateur.
Si certains mots recherchés font partis des mots non significatifs, alors au lieu des trois dernières lignes, on ne met que la dernière. (sans la parenthèse)
C'est une recherche sur le début du mot uniquement.
J'espères que ca va vous avoir aidé à optimisé tout ça.
Marsh Posté le 02-04-2003 à 16:33:19
bobuse a écrit : utilises google |
Mal optimisé pour des petits sites (t'as plus de chance de tomber chez les autres ), sans compter que toutes les pages sont pas toujorus indexés.
Marsh Posté le 02-04-2003 à 16:39:58
omega2 a écrit : Mal optimisé pour des petits sites (t'as plus de chance de tomber chez les autres ), sans compter que toutes les pages sont pas toujorus indexés. |
ok ok
Marsh Posté le 02-04-2003 à 19:04:47
Regarde sur commentcamarche.net, y'a un truc comme çà
!!!
Marsh Posté le 02-04-2003 à 22:53:28
ProToinou a écrit : Regarde sur commentcamarche.net, y'a un truc comme çà |
Sur ce site là, ce que j'ai trouvé, c'est comment utiliser les moteur de recher du genre d'altavista. J'y ai pas vu d'indications sur comment en créer un pour son site personnel. (mal ccherché peut être)
Marsh Posté le 02-04-2003 à 23:00:55
http://www.commentcamarche.net/php/phpmoteur.php3
regarde je crois que çà correspond à tes attentes... j'ai pas vraiment lu...
Donc désolé si c'est pas çà
Marsh Posté le 02-04-2003 à 23:57:37
ProToinou a écrit : http://www.commentcamarche.net/php/phpmoteur.php3 |
T'as raison, ca a l'air d'être à peu près ça.
Mais je suis pas certain qu'il fasse le même genre de recherche que ce que je me prépare à faire. Celui là a l'air de référencé les mots clées de la page html finale tant dis que celui que je penses faire moi prend plusieurs textes (comme les messages d'un forum) les inddexes et permet ensuite de retrouver les textes corespondants à la recherche.
Bon, le principe de base est le même, seules certaines parties changent.
D'ailleur dans mes explications de tout à l'heure, j'ai fait une erreur.
Quand on a plusieurs mots avec ma méthode, il faut faire :
SELECT mess_id,mess_texte |
J'ai mis des crochets autour des parties qu'il faut répété pour chaque mot en plus du premier.
Pour les mots non significatif, on rajoute juste ce qui est entre la seconde paire de crochets.
Marsh Posté le 19-01-2003 à 14:40:37
le but est de creer un moteur de recherche interne a mon site mais je c pas trop par ou commencer