2009-09-29 21 views

Répondre

10

Les variables de session sont stockées côté serveur. Seul l'identifiant de session sera renvoyé par le client. Le serveur recherchera l'ID dans son magasin de sessions et récupérera les variables. Les variables réelles sont pas envoyé au client du tout. Cela fait de l'état de la session un cauchemar pour les applications Web évolutives car il dépend du serveur pour suivre l'état des utilisateurs. Plus vous mettez de choses en session, plus vous aurez de frais supplémentaires par session sur le serveur.

Si vous souhaitez stocker des variables sur le client lui-même, vous devriez utiliser des cookies au lieu de session.

2

Oui. L'ID de session dans l'installation php par défaut correspond en fait à un fichier sur le serveur qui contient toutes les données de session pour vous. L'identifiant de session est simplement un identifiant pour un utilisateur unique. L'identifiant de session est généralement stocké dans un cookie.

En PHP pour stocker plus de données à la session, faites ceci:

--set.php-- 
session_start(); 
$_SESSION['var1'] = 'foo'; 
$_SESSION['var2'] = 'bar'; 

--look.php-- 
print_r($_SESSION); // prints Array (var1 => foo, var2=>bar) 
+1

Vous devez parfois ajouter session_write_close(); après avoir écrit des variables de session pour les faire coller, aussi – user97410

1

Non, si je comprends bien, la seule chose qui est transféré est l'identifiant de session, par l'intermédiaire d'un cookie.

Questions connexes