LaDissertation.com - Dissertations, fiches de lectures, exemples du BAC
Recherche

La penicilline

Discours : La penicilline. Recherche parmi 298 000+ dissertations

Par   •  29 Octobre 2015  •  Discours  •  666 Mots (3 Pages)  •  666 Vues

Page 1 sur 3

TP8 : Authentification et sessions

Objectifs

Gestion des sessions :

  • Mise en place d'une identification des utilisateurs ;
  • Transfert d'informations d'une page à l'autre.

Le site est celui du Spéléo-club de Chauvigny dont le développement a été commencé lors des TP précédents.

Moyens nécessaires

  • l'IDE Netbeans;
  • le navigateur Firefox ;
  • le serveur HTTP Apache avec le support du langage PHP ;
  • le SGBD Mysql et les bibliothèques PHP d'accès ;
  • Le cours sur les sessions ;
  • Le corrigé du site fourni.

Mise à jour de la base de données

L'objectif est d'ajouter le support de l'identification des utilisateurs par des mots de passe hashés (cryptés) en md5.

md5 produit des mots de passe de longueur fixe de 32 octets.

Ajout d'un champ contenant les mots de passe dans la table user

  1. Ajoutez le champ pass_user de type char(32) à la table utilisateurs.

Mise à jour de compte utilisateur

  1. Ajoutez un mot de passe à l'utilisateur Martel grâce à la commande :

update utilisateurs set pass_user=MD5('essai') where ...

Notez l'utilisation de la fonction MD5( ) de Mysql qui permet de hasher le mot de passe fourni avant l'insertion.


Formulaire d'identification d'un utilisateur

[pic 1]

Pour cela il faut mettre en place un formulaire d'identification

[pic 2]

 qui sera accessible via la page index en haut à droite

[pic 3]

Vous trouverez sur la foad :

le projet à télécharger siteSpeleoTP8_etudiant qui contient déjà le lien « s'identifier sur le site » ainsi que la page formulaire d'identification et le fichier traite_formulaire_identif.php qui récupère le login et le mot de passe (pour le moment ce fichier est vide) et qui va comparer avec celui dans la base de données. (vous ferez les tests avec Martel mot de passe essai).

Montez le nouveau projet siteSpeleoTP8_etudiant.

  1. Peut-on accéder à l'administration sans se connecter ?

Il est possible d'aller sur la page d'accueil de l'Administration mais il n'est pas possible de ce connecter.

Traitement du formulaire d'identification

Vous devez maintenant compléter le programme traite_formulaire_identif.php.

Il doit :

  1. récupérer le login et le mot de passe envoyés par le formulaire ;
  2. rechercher dans la base le mot de passe correspondant au login fourni ;

Note : Si la requête ne retourne pas de résultat, c'est que l'utilisateur n'existe pas ;

  1. Comparer, dans le cas où le login existe, le mot de passe contenu dans la base à celui transmis par l'utilisateur, sachant que les mots de passe ont été enregistré hashés en md5.
  2. Ouvrir, dans le cas où le mot de passe correspond, le lien vers l'administration. Sinon recharger le formulaire.

PHP fourni la fonction md5('mot') qui retourne la valeur hashée du mot reçu en paramètre.

  1. Écrivez le code nécessaire.

Pour la lecture des données dans la base, vous pouvez utiliser les fonctions de connexion à la base fournies dans fonctions.php.

  1. Testez avec le compte Martel mot de passe essai

Prise en compte de l'identification dans les pages – Utilisation des variables de session

Démarrage d'une session

Mettre dans le fichier index.php :

...

Télécharger au format  txt (4.6 Kb)   pdf (426.4 Kb)   docx (972.8 Kb)  
Voir 2 pages de plus »
Uniquement disponible sur LaDissertation.com