Cvvvvvvvm Search engine / Engin de recherche
description
Transcript of Cvvvvvvvm Search engine / Engin de recherche
CVVVVVVVMSEARCH
ENGINE /ENGIN DE
RECHERCHE
420-B63 Programmation Web AvancéeAuteur : Frédéric Thériault
1
Consignes Ce laboratoire se fait en
plusieurs étapes. Pour ceux moins à l’aise avec la programmation serveur, je vous conseille fortement de respecter l’ordre des étapes et de ne pas les mélanger.
Votre code doit valider HTML5 ou XHTML
3
Pour vous aider… Lors de la conception de mon
engin de recherche CVM, j’ai utilisé les fonctions suivantes. Cependant, vous pouvez utiliser d’autres méthodes.Pour la redirection de page :
○ header(‘Location…’) et exit;strip_tags – supprime les
balises htmlstrposfile_get_contentsopendir & readdirsubstr & strlen
4
Étape 1 – Intégration des pages Web La première étape consiste à
intégrer les pages Web sans se soucier de la programmation serveur.
Cependant !Afin de ne pas répliquer le code
d’entête et de pied de page, utilisez des « include/require » (PHP). Exemple :○ require_once("header.php");○ …○ require_once("footer.php");
5
Étape 2 : Redirection entre les pages Dans la page d’accueil
(index.php), lorsque l’usager clique sur le bouton rechercher, le serveur vérifie que le champ mot clé n’est pas vide. Le cas échéant, il y a une redirection vers la page recherche.php avec le mot clé en paramètre GET.
Dans la page de recherche, si le mot recherché est vide, alors l’usager est redirigé à la page d’accueil.
8
Étape 3-1 : Programmation de la fonction de recherche sans la pagination Vous devez créer une
fonction en PHP permettant de lire tous les fichiers du répertoire « files ».
Pour chaque fichier, le serveur doit rechercher le mot clé dans le texte.
Si le mot est trouvé, alors écrire en HTML le lien ainsi que le début du texte où le mot a été trouvé.
9
Étape 3-1 : Exemple Le mot recherché est « agi ».
Le serveur a trouvé que le fichier Agile_....html possède le mot. Un hyperlien vers le fichier est
généréL’aperçu du texte commence
par le mot recherché.
10
Étape 3-2 : Nombre de fichiers trouvés La fonction doit maintenant
indiquer à l’utilisateur le nombre de fichiers contenant le mot clé.
11
Étape 3-3 : Connecter la fonction dans le fichier recherche.php Dans le fichier
recherche.php, appeler la fonction de recherche.Exemple:
○ <?php search($_GET[‘mot’]) ?>
12
Étape 3-4 : Retirer les balises HTML de la recherche Lors d’une recherche, l’usager s’attend
à voir un aperçu du texte du fichier, et non pas une partie du HTML du fichier. Il faut donc filtrer les balises HTML afin qu’ils
ne soient pas interprétées par le navigateur et pas considérées dans la recherche
Exemple : Si on recherche le mot« div », il ne faut pas trouver les balises «<div> » des fichiers, mais plutôt les mots qui contiennent la chaîne de caractères« div ».
13
Étape 3.5 : Pagination de la recherche Afin de ne pas voir tous les
résultats sur la même page, il faut ajouter de la pagination.Ainsi, votre fonction de
recherche doit prendre 2 paramètres supplémentaires, soit○ 1- le nombre de résultats par
page (mettre 5)○ 2- la page actuelle
Votre fonction de recherche doit retourner le nombre de pages total de la recherche
14
Étape 3-5 : Changer de pages S’il y a 13 résultats, alors il y a 3
pages (2 pages de 5 résultats, et 1 page de 3)
La lettre ‘v’ de couleur rouge indique la page actuelle affichée à l’utilisateur.
En cliquant sur un ‘v’ de couleur jaune, un hyperlien rappelle la page recherche.php, avec comme paramètre :le mot clé la page de recherche à
visualier
15