Vous voudriez disposer d'un moteur de recherche sur votre site mais votre hébergeur ne vous permet pas d'utiliser de BDD ou tout simplement vous n'y connaissez rien ? Ce script est fait pour vous !
Avant toute chose, vous créez un simple fichier-texte contenant le nom de vos pages HTML, pages sur lesquelles la recherche va porter... En insérant un à un le nom de vos pages HTML dans ce fichier, veillez simplement à les délimiter, les séparer par un... séparateur (vous pouver choisir un point-virgule ; ou tout autre signe distinctif (dans cet exemple, nous avons utilisé <br><br>)
Puis vous recopiez le code PhP ci-dessous et vous l'enregistrez sous le nom qu'il vous plaira avec l'extension .php... Ici, nous le nommerons "moteur.php". Ces deux fichiers, "moteur.txt" et "moteur.php" doivent bien sûr figurer dans le même répertoire que les pages HTML en question :o)
Il ne vous restera plus qu'à le tester en local si vous avez EasyPHP ou directement sur le web !
<? //ouverture du fichier moteur.txt //contenant les références des pages html //sous la forme //ma_page1.html //ma_page2.html //utiliser un séparateur ici c'est <br><br> $ouvre=fopen("moteur.txt","r"); $lit=fread($ouvre,filesize("moteur.txt")); $texte=explode("<br><br>",$lit); $combien=count($texte)-1; fclose($ouvre); //traitement du mot clé entré par l'utilisateur //le nom de l'input est 'terme' echo "<form><input type='text' name='terme'>
<input type='submit' value='chercher'></form>"; if ($terme!="" && strlen($terme)>2) { $terme=strtolower($terme); for ($i=$combien-1;$i>=0;$i--) { $recherche=htmlentities($texte[$i]); $tableau=explode("<body>",$recherche); foreach ($tableau as $ligne) { $fichier = file($ligne); foreach ($fichier as $rang) { $rang=strtolower($rang); if (ereg($terme,$rang)) { $rang=strip_tags($rang); $rang=str_replace($terme,"<font size='3' color='#009999'>
<b>$terme</b>:</font>",$rang); if (!ereg($terme,$rang)){$rang="";} else { echo"<blockquote><a href='$texte[i]'>$texte[$i];</a>
<i>$rang</i></blockquote>"; break; } } } } } } ?>