Surveiller ce forum | Commencer une nouvelle discussion Commencer une nouvelle discussion
gestion des sessions [ Répondre ]
Par : Jose Bamboula on 2006-05-14 18:11
[forum:1821]
Les sessions

Une variable session contrairement à un cookie est stockée sur le serveur lui même, toute fois l'identifiant de session permettant de repérer l'utilisateur , est stocké sur le poste du client. Au même titre que les cookies, les variables sessions sont accessibles dans toutes les pages du site, dans la mesure ou celles-ci autorisent l'utilisation des variables sessions

(session_start())
Démarrer une session

Pour pouvoir utiliser les variables sessions dans une page du site vous devez en entête du fichier faire appel à la fonction session_start().

* bool session_start()

description : permet de créer une session (si elle n'existe pas) ou d'utiliser les variables de la session en cours : retourne true si la session est démarrée
L'identifiant de session

Un fois la session démarrée, vous pouvez accéder à l'identifiant de session (unique pour chaque session) à l'aide de la fonction

* string session_id ([string id]) : si le paramètre id est spécifié, l'identifiant de session changera et prendra la valeur fournie.

Ex.<? echo session_id() ?>
Le nom de la session

Vous pouvez également connaître le nom de la session avec la fonction suivante :

* string session_name([string name]) : si le paramètre name est spécifié, le nom de session changera et prendra la valeur fournie.

Ex. <? echo session_name() ?>
Créer une variable session

Une fois la session créée, vous devez déclarer les variables que vous souhaitez utiliser : ces variables peuvent être déclarée sur n'importe quelle page du site, à l'aide de la fonction session_register() (dans la mesure ou session_start() est placé en entête de page).

* bool session_register (mixed name [, mixed ...])

description : enregistre la variable name dans la session en cours, peut contenir un nombre variable d'éléments : retourne true si la variable est créée.
Exemple

<?
// si la variable session n'existe pas
if (!isset($Var1)) {
session_register("Var1");
}
?>

ou encore

<?
// si la variable session n'existe pas
if (!session_is_registered("Var1")) {
session_register("Var1");
}
?>

ou encore pour créer plusieurs variables en même temps

<?
// création des variables
session_register("Var1","Var2","Var3");
// affectation des valeurs
$Var1="valeur1"
$Var2="Valeur2"
$Var3="Valeur3"
?>

Pour modifier une variable session :

<?
$newvaleur="Nouvelle valeur";
// si la variable session existe
if (session_is_registered("Var1")) {
$Var1=$newvaleur;
}
else // la variable session n'existe pas on la crée
{
$Var1=$newvaleur;
session_register("Var1");
}
?>
Supprimer une variable session

Il est possible de supprimer une variable qui n'est plus utile de la mémoire en utilisant la fonction session_unregister().

* bool session_unregister (string name)

description : supprime la variable name dans la session en cours : retourne true si la variable a été supprimée correctement.
Exemple

<?
// Si la variable session existe
if (session_is_registered("Var1")) {
session_unregister("Var1");
}
?>
Détruire une session et ses variables

Il est possible de supprimer tous les éléments de la session en cours à l'aide de la fonction session_destroy().

* bool session_destroy ()

Il est possible de supprimer toutes les variables de la session en cours à l'aide de la fonction session_unset().

* bool session_unset ()
Exemple : détruire la session courante :

<?
session_unset()
session_destroy()
?>

FEDER Powered By FusionForge Collaborative Development Environment Charte d'utilisation / Nous contacter / Mentions légales Haut de page