<?
/*
* Project: Absynthe session
* File: asession.test.php4
* Author: Absynthe <sylvain@abstraction.fr>
* Webste: http://absynthe.is.free.fr/asession/
* Version: alpha4 6
* Date: 04/03/2007
* License: LGPL
*/
require "./asession.class.php4";
// Equivalent de $_SESSION avec le systême PHP
$donnes_session = array();
// Création de l'objet session
$session = new asession();
// Configuration de la session
// Etape facultative, si vous ne la faites pas, les paramêtres par défaut seront utilisés
$session->asession_config(ASESS_SET_SESSION_NAME, 'masession'); // Nom de votre session, 'asession' par défaut
$session->asession_config(ASESS_SET_DATA_VAR_NAME, 'donnes_session'); // Nom de la variable qui contient les données session, équivalent de $_SESSION, $asession_data par defaut
$session->asession_config(ASESS_SET_SESSION_TIMELIFE, 60 * 60 * 24 * 7); // Durée de vie de votre session en secondes, 7 jours par défaut
$session->asession_config(ASESS_SET_SESSION_SAVE_PATH, './sessions'); // Repertoire de stockage des fichiers sessions, 'asession' par défaut
$session->asession_config(ASESS_SET_COOKIE_TIMELIFE, 60 * 60 * 24 * 7); // Durée de vie du cookie session en secondes, 7 jours par défaut
$session->asession_config(ASESS_SET_COOKIE_PATH, '/'); // Paramètre path du cookie session, null par defaut
$session->asession_config(ASESS_SET_COOKIE_DOMAIN, $_SERVER['HTTP_HOST']); // Paramètre domain du cookie session, null par defaut
$session->asession_config(ASESS_SET_CLEAN_SESSION_DIR_DELAY, 60 * 60 * 24); // Délai entre chaque nettoyage du dossier session, en secondes, 1 jour par défaut
$session->asession_config(ASESS_SET_ERROR_REDIRECTION_URL, '/asession/cookie_error.html'); // Url de redirection si le client n'accepete pas les cookies
// Démarage de la session
$id = $session->asession_start();
// Ces appels de méthodes sont ici titre d'exemples
// ils sont facultatifs a moins que vous en ayez besoins
$id2 = $session->asession_id(); // Retour de l'id session
$id3 = $session->asession_regenerate_id(); // Regéneration et maj de l'id session
$new_id = $session->asession_generate_id(); // Génération d'un id
$id4 = $session->asession_change_id($new_id); // Mise à jour manuelle de l'id session
if ($_GET['x'] == 'logout')
{
// Destruction de la session
$session->asession_destroy();
echo 'vous êtes déloggé';
}
else
{
echo 'id $session->asession_start() : '.$id."<br>\n";
echo 'id $session->asession_id() : '.$id2."<br>\n";
echo 'id $session->asession_regenerate_id() : '.$id3."<br>\n";
echo 'id $session->asession_generate_id() : '.$id4."<br><br>\n";
if (is_null($donnes_session['id']))
{
// Variable de stockage des données, équivalent à $_SESSION avec le systeme de session de PHP
$donnes_session['prenom'] = 'Sylvain';
$donnes_session['age'] = '19';
$donnes_session['id'] = $session->asession_generate_id();
echo 'les donnés sont lues depuis les variables. <a href="./asession.test.php4">rafraichir la page</a>'."<br><br>\n";
}
else
{
echo 'les donnés sont lues depuis le fichier session'."<br><br>\n";
}
foreach ($donnes_session as $key => $value)
{
if (is_array($value))
{
echo "$key :<br>\n";
foreach ($value as $k => $v)
{
echo " $k : $v<br>\n";
}
}
else
{
echo "$key : $value<br>\n";
}
}
echo '<br><a href="./asession.test.php4?x=logout">logout</a>'."<br>\n";
echo '<a href="./asession.test.php4.php">Source exemple</a>'."<br>\n";
echo '<a href="./asession.class.php4.php">Source class</a>'."<br>\n";
}
// Appelle pour sauvegarder la session
$session->asession_close();
?>
|