Je l'ai lu. et n'ayant encore jamais créé de moteur je ne sais pas encore comment remplir une bdd de façon pertinente. Alors je demande (c'est le but dans un fofo non?)
Pour ajouter quelques précision par rapport à mon article.
La solution que tu pourras y trouver est simpliste, mais fonctionnelle, et permet aussi d'avoir des meta keyword et description différents pour chaque page (utile pour le référencement).
L'idée est d'avoir au moins une table dans laquelle tu as tes url et tes keyword (avec des séparateurs)
Et ensuite de faire une requete avec l'opérateur LIKE, qui permet de trouver toutes les occurrences en bdd qui contiennent une chaine.
L'opérateur like est particulier, pour en savoir plus tu peut lire cet article
Pour faire simple, dans une expression like, on recherche une série de caractère, et on peut utiliser deux sybole qui sont _ et %
_ définit un caractère, peut importe lequel
Ainsi un LIKE 'abc_'
Retournera tout les chaines qui commencent par abc, et qui comporte un caractère après.
abcd => oui
abc5 => oui
abcde => non
% définit plusieurs caractère, peut importe lesquels
Il fonctionne comme _ mais ne se limite pas à un seul caractère.
Ainsi un LIKE 'abc%'
Retournera tout les chaines qui commencent par abc, et peuvent comporter plusieurs caractère après.
abcd => oui
abc5 => oui
abcde => oui
On peut les utiliser partout dans la recherche LIKE
LIKE '%abc%' => n'importe quel terme qui contient abc et d'autre caractères avant et après.
LIKE 'a%b%c' => n'importe quel terme qui commence par a, finit par c et contient au moins un b.
Pour un moteur de recherche, on utilise donc généralement
<?php
mysql_query("SELECT * FROM table WHERE mot LIKE '%" . $_POST['keyword'] . "%'");
?>
Un détail, LIKE n'est pas sensible à la casse, c'es à dire qu'il reconnaitra les mots même s'ils n'ont pas les même majuscules/minuscules.
Pour effectuer une recherche LIKE avec le respect de la casse, il faut utiliser LIKE BINARY 'mot'
Génial cela marche nickel tu as parfaitement répondu à mon soucis et je t'en remercie.
Barre de recherche interne
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Tutoriel complet MySQL !
Tutoriel complet MySQL !
Tutoriel complet MySQL !