Variables de session

DéfinitionVariable de session PHP

Une variable de session PHP est une variable stockée sur le serveur.

C'est une variable temporaire qui a une durée limitée et est détruite à la déconnexion (fermeture du navigateur).

Les variables de session sont partagées par toutes les pages PHP d'une session (accès depuis un même navigateur). Elles permettent donc le passage d'information entre pages.

ExempleExemple d'utilisation

  • Sauvegarde d'identifiants de connexion

  • Sauvegarde d'un panier d'achat

  • ...

SyntaxeDémarrer une session

1
<?php session_start(); ?>

Ce code permet de charger le fichier contenant les variables de session sur le serveur, ou s'il n'existe pas de la créer.

Remarque

Ce code est à placer au début de toutes les pages PHP qui souhaitent utiliser les variables de sessions, avant tout autre code PHP ou HTML.

SyntaxeUtiliser les variables

1
<?php 
2
...
3
$_SESSION['variable'] = valeur ; 
4
...
5
 ?>

Un tableau association $_SESSION est alors mis à disposition pour gérer des variables.

Exemple

1
<?php
2
// page1.php
3
session_start();
4
?>
5
<html>
6
<body>
7
<h1>Page 1</h1>
8
<?php
9
$_SESSION['login'] = 'me';
10
$_SESSION['mdp'] = 'secret';
11
?>
12
<a href="page2.php">page 2</a>
13
</body>
14
</html>
1
<?php
2
// page2.php
3
session_start();
4
?>
5
<html>
6
<body>
7
<h1>Page 2</h1>
8
<?php
9
echo $_SESSION['login'] ;
10
echo "<br/>" ;
11
echo $_SESSION['mdp'] ;
12
?>
13
</body>
14
</html>

La page page2.php est en mesure d'afficher les informations de la page page1.php.

SyntaxeAutres instructions

  • Supprimer une variable : unset($_SESSION['variable'])

  • Supprimer toutes les variables : session_unset()

  • Supprimer la session : session_destroy()

ComplémentCookies

Les sessions s'appuient sur les cookies, fichiers de données gérés côté client par le navigateur Web, pour stocker l'identifiant de session. Il est possible d'utiliser des sessions sans cookie, en passant l'identifiant de session dans l'URL.

http://www.phpsources.org/tutoriel-cookies.htm