Geek Help Me ! Tutoriels, Dossiers, News...

  Accueil Tutoriels Développement PHP / MySQL [PHP] Tuto : Les sessions PHP
Bookmark and Share
[PHP] Tuto : Les sessions PHP
Note des utilisateurs: / 4
MauvaisTrès bien 
Écrit par Lordsirius   
Mardi, 16 Mars 2010 12:24

I/ Définition

Les sessions sont des variables stockés qui peuvent transiter entre plusieurs pages. Elles sont stockés sur le serveur et sont désigné par un nom et un identifiant de session. Les durées de session dépendent de la configuration du fichier php.ini (générallement 30min) et sont également détruites à la fermeture du navigateur.

Chaque session est identifié par un numéro nommé identifiant de session.

 

II/ Démarrer une session

Pour démarrer une session il suffit de placer en début de fichier :

<?php
session_start() ;
?>

 

III/ Stocker une valeur en session

Pour stocker une valeur en session, vous devez passer par la variable gobale $_SESSION['cle']

Par exemple pour stocker un login en session :

Fichier index.php

<?php
session_start() ;
$_SESSION["login"]="Monlogin";
?>

 

IV/ Utiliser une variable de session

Fichier affiche.php

<?php
session_start() ;
echo $_SESSION["login"]; //afiche Mon Login
?>

Ainsi le fichier affiche.php affiche la valeur $_SESSION["login"] stocker en session.

 

V/ Tester si une variable existe

Si vous avez besoin de vérifier si une variable de session PHP existe, étant donné que $_SESSION est un tableau global vous avez deux possibilité.

La première consiste a vérifier si le champ est initialisé :

<?php
session_start() ;
if (isset($_SESSION["login"])) {
   echo $_SESSION["login"]; //afiche Mon Login
}
?>

La deuxième méthode consiste à vérifier la présence de la clé dans le tableau $_SESSION :

<?php
session_start() ;
if (array_key_exists("login",$_SESSION)) {
   echo $_SESSION["login"]; //afiche Mon Login
}
?>

 

VI/ Supprimer une variable de session :

Pour supprimer une variable de session, il faut utiliser la fonction unset() ;

Ex :

<?php
session_start() ;
if (array_key_exists("login",$_SESSION)) {
   unset($_SESSION["login"]) ;
}
?>

 

VII Détruire toutes les variables de session

<?php
session_start() ;
session_destroy();
?>

Attention : La session doit être déclarée dans le script en haut de page car le cache du navigateur doit être vide afin de pouvoir démarrer une session. Aucun code HTML avant le démarrage d'une session sous peine de voire des bugs ;)

Pour plus de renseignement, consulter le manuel PHP sur l'utilisation des sessiion à l'adresse : http://fr.php.net/manual/fr/intro.session.php, vous pouvez également nous laisser un commentaire sur notre forum afin d'obtenir des réponses à vos questions.

Cordialement,

Mise à jour le Lundi, 26 Avril 2010 22:22
 
web design - referencement