Discussion

Vous êtes ici : Accueil » programmation » 1 . Quelques petites choses à savoir sur les sessions

1 . Quelques petites choses à savoir sur les sessions

 
 Connexion au site
 
 


 


  
   
    
    
   
   
    
    
   
   
    
     
  

Vôtre login
     
    
Vôtre mot de passe
     
    

     
    


 


 

 

Beaucoup d'entre-vous se posent la question de savoir comment passer leur variables de pages en pages, ou encore comment conserver certaines informations pendant la durée d'une visite sur leur site. Les sessions devraient répondre à leurs attentes. 
 

1 . Quelques petites choses à savoir sur les sessions

Une session est en fait un fichier conservé sur le serveur et accessible à vos scripts en fonction d'un identifiant généré à la création. Chaque fois qu'un de vos visiteurs génère une session, un identifiant lui est attribué. Tout ce qui est dans cette session est accessible de partout à vos scripts. On comprend dès lors très vite tout l'intérêt de la chose. En effet, si chaque session est propre à un visiteur, on peut personnaliser nos scripts en fonction du visiteur, ou encore alléger nos requêtes : plutôt que d'aller chercher un pseudonyme dans la base de donnée sur chaque page, vous le rapatriez à l'arrivée du visiteur sur le site, vous le stockez en session et c'est de là que vous y accéderez par la suite.

La session est finalement l'équivalent d'un cookie en plus sécurisé. En effet, étant stocké sur le serveur et non chez le client, elle est plus difficile d'accès aux éventuels pirates. Mais un risque demeure, prenez donc l'habitude de ne pas y stocker des informations trop sensibles. N'oubliez pas également que la session, à la différence du cookie, n'est valable qu'un temps limité (aux alentours des 30 minutes, mais cela dépend de la configuration de votre serveur), et est automatiquement détruite à la fermeture du navigateur du visiteur.

Vous pouvez enregistrer en session tout type de variable : du simple numérique au tableau en passant par la chaîne de caractères.

Il existe plusieurs fonctions liées aux sessions, mais deux seulement sont essentielles à leur fonctionnement, ainsi qu'un tableau :

session_start();
Cette fonction sert à démarrer une session OU appeler la session existante. Elle doit donc être présente sur toutes les pages de votre site. A savoir que cette fonction ne tolère pas d'envoi au navigateur avant elle. Plus simplement il ne faut aucune sortie avant elle : pas de html, pas de echo. Prenez l'habitude de la placer au début du fichier, avant quoi que ce soit d'autre et tout se passera bien.

session_destroy();
Cette fonction détruit la session en cours. Mais elle ne détruit pas les variables de sessions associées à la session courante. Nous verrons plus loin comment détruire une session complètement et proprement.

$_SESSION
Il s'agit du tableau global contenant toutes les variables de sessions pour la session courante. Son utilisation est exactement identique aux tableaux habituels, à savoir :
 
Utilisation du tableau global $_SESSION

 

// Nous allons créer une variable de session appellée "nombre" et qui contient "1234" :
$_SESSION['nombre'] = 1234;

// Nous pouvons maintenant afficher la variable "nombre"
echo 
$_SESSION['nombre'];  // Ceci va afficher 1234

 

2 . Etude de cas concret

Nous allons maintenant étudier un cas concret à savoir une procédure de login. En effet c'est une cas répandu d'utilisation des sessions. Nous allons donc créer un formulaire qui permet au visiteur de se loguer, puis une page de vérification qui va consulter la base de données et vérifier que les informations de connexion sont correctes. Et enfin mettre les données utiles sur l'utilisateur en session afin de pouvoir les réutiliser sur d'autres pages du site.
 

Le code HTML de la page de connexion

Le rendu
 
Votre login
Votre mot de passe
 

Rien à dire ici, si vous ne comprenez pas cette étape, il va falloir commencer par apprendre le HTML (quoique là le code en question n'est pas fantastique, mais c'est pour l'exemple :p). Nous allons maintenant passer à la récupération des données et au test de celles-ci.

 

 

Code de la page verifLogin.php

// On démarre la session

session_start();
$loginOK = false;  // cf Astuce

// On .......
La lecture de la totalitée de cette page est réservée aux utilisateurs premiums, cliquez içi pour vous connecter


Humour noir

Le jour de la rentrée, un gosse arrive a l'école en larmes. La maîtresse s'approche de lui
- Qu'est-ce qu'il y a mon petit?
- OUIIN ! Ce matin maman est allée noyer les 6 petits chats qui viennent de naître!
- Oui bien sur c'est triste, mais ce n'est pas une raison pour pleurer.
- Mais si, maman m'avait promis que c'est moi qui irait les noyer !


Laisser un commentaire





apz013


Cv94 Mardi 16 Avril 2024

Aucun commentaire pour le moment concernant le sujet « 1 . Quelques petites choses à savoir sur les sessions »!