III.5. Mémorisation des informations
a. Conception du système d'identification des
utilisateurs
Dès son arrivée sur la bibliothèque
virtuelle, l'utilisateur est identifié anonymement par le système
de gestion de sessions intégré de PHP. Cet identifiant de session
anonyme le suit pendant toute sa visite sur le site. Si l'utilisateur est un
client, sa session lui permet dans un premier temps de mémoriser les
articles ajoutés à son panier virtuel (voir tableau 2 ci-
après). Lors de la validation de sa commande, le client
décline son identité en saisissant son e-mail et son mot de
passe, ou crée un compte client s'il n'en possède pas encore.
Après le contrôle de la validité du compte client, son
e-mail ($_SESSION ['email']) et son statut ($_SESSION
['statut'], égal à client dans ce cas)
viennent compléter les données du panier virtuel dans la session
(voir tableau 1). Il est à noter que, au cours de cette étape,
les informations de sa commande et ses coordonnées sont
enregistrées dans la base de données du serveur, pour les
récupérer lors d'une prochaine visite. Si l'utilisateur est un
administrateur, sa session mémorise uniquement son e-mail et son statut
lors de la saisie du
formulaire d'identification. La mémorisation de son statut
admin lui permet d'accéder à toutes les pages de
l'espace administrateur, sans avoir à s'identifier lors du passage d'une
page à l'autre.
Tableau 1. Variables de session utilisées pour
l'identification d'un utilisateur
Variables de session dédiés à
l'identification
|
Description
|
Exemples
|
$_SESSION ['email']
|
E-mail de l'utilisateur (client ou
Administrateur)
|
mushila@unikin.cd
|
$_SESSION ['statut']
|
Statut de l'utilisateur, qui prend la valeur client
ou admin selon le
profil de l'utilisateur.
|
client
|
b. Conception du panier virtuel
Comme nous l'avons précisé
précédemment, les informations relatives aux articles
sélectionnés par l'utilisateur sont mémorisées dans
des variables de session. Nous utilisons une variable de type tableau
($liste I]) pour mémoriser toutes les informations de
la liste du panier virtuel. Ce premier tableau contient lui-même autant
de variables de type tableau qu'il y a d'articles à retenir (Ix]
représente l'identifiant de chaque article). Chaque tableau
d'article mémorise quant à lui quatre informations
différentes (Iy]=0 : référence,
Iy]=1 : quantité,). La structure ainsi obtenue est donc
un tableau à deux dimensions ($listeIx]Iy]). Pour bien
comprendre le fonctionnement de cette variable $liste, nous
vous proposons d'illustrer son utilisation par un exemple concret d'une
commande de trois articles (VB, Télématique et
Base de données). Dans cet exemple, il est possible de
récupérer l'information quantité de l'article base
de données à l'aide de la variable $listeI2]I1]
(qui est égale à 1 dans l'exemple).
$liste Ix]Iy]
|
Iy]=I0] : référence
|
Iy]=I1] : quantité
|
[x]=[0] : article0
|
VB
|
2
|
[x]=[1] : article1
|
Télématique
|
3
|
[x]=[2] : article2
|
Base de données
|
1
|
|