8.117 Sessions
8 Référence des fonctions
Manuel PHP
. Introduction . Sessions et sécurité . Pré-requis . Installation . Configuration à l'exécution . Types de ressources . Constantes pré-définies . Exemples . Passer l'identifiant de session (session ID) . Gestion personnalisée des sessions . session_cache_expire . session_cache_limiter . session_commit . session_decode . session_destroy . session_encode . session_get_cookie_params . session_id . session_is_registered . session_module_name . session_name . session_regenerate_id . session_register . session_save_path . session_set_cookie_params . session_set_save_handler ->session_start . session_unregister . session_unset . session_write_close
|
8.117.27 session_start()Initialise une session[ Exemples avec session_start ] PHP 4, PHP 5
bool
session_start (
void
)
session_start
crée une session (ou
restaure celle trouvée sur le serveur, via l'identifiant
de session passé dans une requête GET, POST ou par un cookie).
session_start
retourne toujours
TRUE
.
| Note | |
Si vous utilisez des sessions basées sur les cookies, vous devez
appeler
session_start
avant d'afficher quoi
que ce soit au navigateur.
|
| Exemple de session : page1.php |
<?php // page1.php
session_start();
echo 'Bienvenue à la page numéro 1';
$_SESSION['favcolor'] = 'vert'; $_SESSION['animal'] = 'chat'; $_SESSION['time'] = time();
// Fonctionne si le cookie a été accepté echo '<br /><a href="page2.php">page 2</a>';
// Ou bien, en indiquant explicitement l'identfiant de session echo '<br /><a href="page2.php?' . SID . '">page 2</a>'; ?>
|
Après avoir vu la page
page1.php
avec un navigateur,
la seconde page
page2.php
va magiquement afficher
les données de session. Lisez la référence sur
les sessions pour des informations
sur la propagation des identifiants de session ,
et l'utilisation de la constante
SID
.
| Exemple de session : page2.php |
<?php // page2.php
session_start();
echo 'Bienvenue sur la page numéro 2<br />';
echo $_SESSION['favcolor']; // vert echo $_SESSION['animal']; // chat echo date('Y m d H:i:s', $_SESSION['time']);
// Vous pourriez utiliser la constante SID ici, tout comme dans la page page1.php echo '<br /><a href="page1.php">page 1</a>'; ?>
|
Si vous avez utilisé une session nommée, vous devez
appeler
session_name
avant d'appeler
session_start
.
session_start
va configurer un gestionnaire
interne d'affichage, pour assurer la réécriture des URL, lorsque
le support transparent du
SID
est activé.
Si vous utilisez
ob_gzhandler
ou
ob_start
,
l'ordre des gestionnaires d'affichage est important pour un affichage
correct. Par exemple, l'utilisateur doit enregistrer
ob_gzhandler
avant que la session ne commence.
| Note | |
Depuis PHP 4.3.3, l'appel à
session_start
alors que la session
a déjà débuté, retournera une erreur de niveau
E_NOTICE
. Le second appel à la fonction sera
tout simplement ignoré.
|
Voir aussi
$_SESSION
,
session.auto_start
et
session_id
.
|