Initiation à Perl

Transcription

Initiation à Perl
Initiation à Perl
TD 14
Le but de ces exercices est de réaliser la gestion d’un mini répertoire téléphonique.
Exercice 1
Ecrivez une page HTML de menu, permettant d’accéder aux fonctionnalités d’ajout, de
d’affichage, de recherche et de suppression sur votre répertoire téléphonique. Vous nommerez
votre fichier : menu.html.
Voici la structure que l’on souhaite mettre à disposition de l’utilisateur :
Menu
Ajouter
Afficher
Rechercher
Supprimer
Exercice 2
Ecrivez un script Perl qui affiche un formulaire permettant de saisir les champs : Nom,
Prénom et Numéro de téléphone.
Lorsque l’utilisateur soumet ses données, le formulaire appel un script CGI pour ajouter les
informations saisies dans une table de hachage liée à un fichier DBM. La clé de cette table de
hachage sera le nom-prénom et la valeur sera le numéro de téléphone.
Faites en sorte que toutes ces actions s’effectuent dans un même fichier Perl nommé :
ajouter.pl.
Florent Brusciano
CONCEPTION DE SITES ET ADMINISTRATION DE SERVEURS WEB
A4, 0.5 valeur 60 heures
1
Exercice 3
Ecrivez un script Perl qui affiche le contenu du fichier DBM.
Vous nommerez ce fichier : afficher.pl.
L’affichage doit s’effectuer sous la forme du tableau ci-dessous :
Nom
Brusciano
Geahchan
Prénom
Florent
Emile
Téléphone
01 23 12 14 15
01 54 56 44 14
Supprimer
Supprimer
Le lien « supprimer » permet l’appel au CGI supprimer.pl que vous allez développez dans
l’exercice 4.
Exercice 4
Ecrivez un script de suppression d’une entrée d’une table de hachage. Vous nommerez ce
fichier : supprimer.pl.
Exercice 5
Ecrivez un script de recherche de numéro de téléphone. L’utilisateur saisira le nom et prénom
à l’aide d’un formulaire. Afficher le résultat de la recherche en n’oubliant pas d’insérer un
lien permettant de revenir au menu. Comme pour l’exercice 2 un seul script Perl devra réaliser
l’ensemble de ces actions. Vous nommerez ce fichier rechercher.pl.
Remarque 1
Parfois vous ne voulez pas produire vous-même un document mais plutôt rediriger le
navigateur ailleurs par exemple en choisissant un URL en vous basant sur l'heure ou l'identité
de l'utilisateur. La fonction redirect() redirige le navigateur vers un URL différent.
print $query->redirect('http://quelque.part/ailleurs/plus/loin');
Remarque 2
Le format DBM est un format de fichier de hachage standardisé qui existe en dehors de Perl.
En Perl, il nous est possible de manipuler directement une table de hachage en la liant avec un
tel fichier : les valeurs de la table de hachage et du fichier sont synchronisées. Pour y accéder
il faut utiliser les fonctions dbmopen et dbmclose
Florent Brusciano
CONCEPTION DE SITES ET ADMINISTRATION DE SERVEURS WEB
A4, 0.5 valeur 60 heures
2
Voici un exemple d’utilisation pour l’écriture dans un fichier DBM :
use strict;
use AnyDBM_File;
# Hachage contenant les données
my %Hash;
$Hash{key1} = "Bonjour comment vas tu";
$Hash{key2} = "Salut à bientôt";
# Hachage pour la liaison avec le fichier DBM
my %HashFic;
# pour CREER un fichier DBM "toto" :
dbmopen(%HashFic, "toto", 0644) or die("création de toto impossible : $!");
%HashFic = %Hash;
dbmclose(%HashFic);
# pour LIRE LES DONNEES d'un fichier DBM "toto" :
dbmopen(%HashFic, "toto", 0644) or die("création de toto impossible : $!");
%Hash = %HashFic;
dbmclose(%HashFic);
Florent Brusciano
CONCEPTION DE SITES ET ADMINISTRATION DE SERVEURS WEB
A4, 0.5 valeur 60 heures
3

Documents pareils