Vous êtes sur la page 1sur 6

TP : page protge par mot de passe

TP : page protge par mot de passe


Les prrequis En rgle gnrale, il faut avoir lu tous les chapitres qui prcdent le TP pour bien le comprendre. Voici la liste des connaissances dont vous aurez besoin pour raliser ce TP : afficher du texte avec echo ; utiliser les variables (affectation, affichage) ; transmettre des variables via une zone de texte d'un formulaire ; utiliser des conditions simples (if, else). Si l'un de ces points est un peu flou pour vous (vous avez peut-tre oubli), n'hsitez pas relire le chapitre correspondant, vous en aurez besoin pour traiter convenablement le TP. Vous verrez, il ne vous sera pas demand de faire des choses compliques. Le but est simplement d'assembler toutes vos connaissances pour rpondre un problme prcis. Votre objectif Voici le scnario : vous voulez mettre en ligne une page web pour donner des informations confidentielles certaines personnes. Cependant, pour limiter l'accs cette page, il faudra connatre un mot de passe. Dans notre cas, les donnes confidentielles seront les codes d'accs au serveur central de la NASA (soyons fous !). Le mot de passe pour pouvoir visualiser les codes d'accs sera kangourou. Sauriez-vous raliser une page qui n'affiche ces codes secrets que si l'on a rentr le bon mot de passe ? Comment procder ? Pour coder correctement, je recommande toujours de travailler d'abord au brouillon (vous savez, avec un stylo et une feuille de papier !). a peut bien souvent paratre une perte de temps, mais c'est tout fait le contraire. Si vous vous mettez crire des lignes de code au fur et mesure, a va tre coup sr le bazar. l'inverse, si vous prenez cinq minutes pour y rflchir devant une feuille de papier, votre code sera mieux structur et vous viterez de nombreuses erreurs (qui font, elles, perdre du temps).

TP : page protge par mot de passe


1. 2.

3.

quoi doit-on rflchir sur notre brouillon ? Au problme que vous vous posez (qu'est-ce que je veux arriver faire ?). Au schma du code, c'est--dire que vous allez commencer le dcouper en plusieurs morceaux, eux-mmes dcoups en petits morceaux (c'est plus facile avaler). Aux fonctions et aux connaissances en PHP dont vous allez avoir besoin (pour tre srs que vous les utilisez convenablement). Et pour montrer l'exemple, nous allons suivre cette liste pour notre TP. Problme pos On doit protger l'accs une page par un mot de passe. La page ne doit pas s'afficher si l'on n'a pas le mot de passe. Schma du code Pour que l'utilisateur puisse entrer le mot de passe, le plus simple est de crer un formulaire. Celui-ci appellera la page protge et lui enverra le mot de passe. Un exemple de ce type de page est reprsent la figure suivante. L'accs au contenu de la page ne sera autoris que si le mot de passe fourni par l'utilisateur est kangourou.

TP : page protge par mot de passe

Vous devez donc crer deux pages web :


formulaire.php : contient un simple formulaire comme vous savez les faire ; secret.php : contient les codes secrets mais ne les affiche que si on lui donne le mot de passe. Connaissances requises Nous avons dtaill les connaissances requises au dbut de ce chapitre. Vous allez voir que ce TP n'est qu'une simple application pratique de ce que vous connaissez dj, mais cela sera une bonne occasion de vous entraner. ;-)

formulaire.php

Comme vous le savez, il y a deux pages crer. Commenons par la plus simple, formulaire.php :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <title>Page protge par mot de passe</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> </head> <body> <p>Veuillez entrer le mot de passe pour obtenir les codes d'accs au serveur central de la NASA :</p> <form action="secret.php" method="post"> <p> <input type="password" name="mot_de_passe" /> <input type="submit" value="Valider" /> </p> </form> <p>Cette page est rserve au personnel de la NASA. Si vous ne travaillez pas la NASA, inutile d'insister vous ne trouverez jamais le mot de passe ! ;-)</p> </body> </html>

secret.php
Maintenant, intressons-nous la page secret.php qui est appele par le formulaire.

<head> <title>Codes d'accs au serveur central de la NASA</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

</head>
<body> <?php if (isset($_POST['mot_de_passe']) AND $_POST['mot_de_passe'] == "kangourou") // Si le mot de passe est bon { // On affiche les codes ?> <h1>Voici les codes d'accs :</h1> <p><strong>CRD5-GTFT-CK65-JOPM-V29N-24G1-HH28-LLFV</strong></p> <p> Cette page est rserve au personnel de la NASA. N'oubliez pas de la visiter rgulirement car les codes d'accs sont changs toutes les semaines.<br /> La NASA vous remercie de votre visite.

</p>
<?php } else // Sinon, on affiche un message d'erreur { echo '<p>Mot de passe incorrect</p>'; } ?>

</body> </html>

Vous aimerez peut-être aussi