[php] moteur de recherche title
bkrqpzef
Messages postés
213
Statut
Membre
-
bkrqpzef Messages postés 213 Statut Membre -
bkrqpzef Messages postés 213 Statut Membre -
ATTENTION : Je n'ai pas de base de données :D
Bonjour à toutes et à tous,
Voilà j'aimerai mettre en place un système de recherche sur mon site web. J'ai trouvé quelques programmes très bien fait en php, mais ceux-ci recherchent dans toutes les pages et analysent toutes les lettres.
Dans mon cas, c'est une perte de temps et une perte de resources. Je voudrais que ce moteur de recherche se focalise exclusivement sur ce qu'il y a entre les balises <title> et </title>.
Si quelqu'un aurait une ébauche à me proposer.
Merchi
Bonjour à toutes et à tous,
Voilà j'aimerai mettre en place un système de recherche sur mon site web. J'ai trouvé quelques programmes très bien fait en php, mais ceux-ci recherchent dans toutes les pages et analysent toutes les lettres.
Dans mon cas, c'est une perte de temps et une perte de resources. Je voudrais que ce moteur de recherche se focalise exclusivement sur ce qu'il y a entre les balises <title> et </title>.
Si quelqu'un aurait une ébauche à me proposer.
Merchi
A voir également:
- [php] moteur de recherche title
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Google moteur de recherche page d'accueil - Guide
- Copernic moteur de recherche - Télécharger - Navigateurs
- Copernic Desktop Search - Télécharger - Utilitaires
- Pourquoi mon moteur de recherche change tout seul ✓ - Forum Virus
9 réponses
vive les REGEX !! :p
tu fait une condition, si le titre de la page est égal à la recherche, alors il y a un résultat.
$titre = preg_match("#\<title\>(.*)\</title\>#Ui",$page);
$titre = $titre[0]
tu fait une condition, si le titre de la page est égal à la recherche, alors il y a un résultat.
Hum, merci de ta réponse. Mais je ne comprend pas ce que je dois en faire.
J'ai disons 3000 pages html, j'aimerai faire une page php spécifique pour y mettre le moteur de recherche.
(Dois-je modifier les 3000 pages avec ta méthode ?) Je débute en php.
(Ou je vais pas tarder à débuter :p)
Créer une variable globale tableau qui contiendrait tous les titres des pages TITLE[3000] peut être une solution.
Ou alors faire un moteur sans modifier les pages html.
Mais comment ? :p
J'ai disons 3000 pages html, j'aimerai faire une page php spécifique pour y mettre le moteur de recherche.
(Dois-je modifier les 3000 pages avec ta méthode ?) Je débute en php.
(Ou je vais pas tarder à débuter :p)
Créer une variable globale tableau qui contiendrait tous les titres des pages TITLE[3000] peut être une solution.
Ou alors faire un moteur sans modifier les pages html.
Mais comment ? :p
tu a juste a "scanner" les pages et a utiliser cette REGEX pour recherche ce qu'il y a entre les balise title, ensuite tu regarde si sa correspond avec la recherche.
je te fais un petit script et je reposte dans 20 min pour que tu comprenne mieux ^^
voila :
ici, le script scanne un dossier et récupere toute les pages du dossier qui sont scannées, et si le mot clé recherché se trouve dans le titre d'une ou plusieurs pages, cela affiche un lien vers ces pages.
le problème c'est qu'il faut qu'il y ai un dossier spécifique ou il y a toute tes pages, sinon tu peut toujours t'amuser a mettre le nom de chacune de tes pages ...
a oui :
pour le test j'avais un architecture comme ceci :
je te fais un petit script et je reposte dans 20 min pour que tu comprenne mieux ^^
voila :
<form action="#" method="GET">
<input type="text" name="motcle">
<input type="submit" value="Rechercher">
</form>
<?php
$rep = "pages/"; //répertoire ou se trouvent les pages
$dir = opendir($rep);
?>
<?php
while ($f = readdir($dir)) {
if(is_file($rep.$f)) {
$in = "pages/".$f; //répertoire ou se trouvent les pages
$fp = fopen($in,"r");
$page = '';
while (!feof($fp)) {
$page .= fgets($fp, 4096);
}
preg_match("#<title>(.*)</title>#Ui", $page, $titre);
if( preg_match("/".$_GET['motcle']."/i", $titre[1]) ){
echo "<a href=".$in.">".$titre[1]."</a><br>";
}
}
}
?>
<?php
closedir($dir);
?>
ici, le script scanne un dossier et récupere toute les pages du dossier qui sont scannées, et si le mot clé recherché se trouve dans le titre d'une ou plusieurs pages, cela affiche un lien vers ces pages.
le problème c'est qu'il faut qu'il y ai un dossier spécifique ou il y a toute tes pages, sinon tu peut toujours t'amuser a mettre le nom de chacune de tes pages ...
a oui :
pour le test j'avais un architecture comme ceci :
/test/
/test1.php (fichier qui contient le script)
/pages/
/page1.html
/page2.html
/autrepage.html
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question