Download - Cvvvvvvvm Search engine / Engin de recherche

Transcript

CVVVVVVVMSEARCH

ENGINE /ENGIN DE

RECHERCHE

420-B63 Programmation Web AvancéeAuteur : Frédéric Thériault

1

Le moteur de recherche CVM

2

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 1-1 : Maquette 1 – index.php

6

7

Étape 1-2 : Maquette 1 – recherche.php

É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

Vue d’ensemble du site et de son architecture

16