Vous êtes ici Codes PHP et MySQL > Sessions > Fonction d'actualisation ou de fin de session

 

Fonction d'actualisation ou de fin de session

Cette fonction permet de vérifier si la session est expirer.
Si oui, elle la détruit, sinon elle l'actualise.

Vous devez crée une variable $_SESSION['time'] lors de la création de la session (la connexion de l'utilisateur).

A appeler juste après le session_start, comme ceci:

session_start();
actualiser_session();

PS: n'oubliez pas de crée un fichier fonction.php, d'y placer le code et de l'inclure dans chaque page ou la fonction est appellé.
 
Boustifire
Site de l'auteur voir
[4] sources en PHP voir
Code vu 2684 fois
Enregistré le 25 Nov 2009
  • Digg ce code sur digg.com
  • Bookmark ce code sur del.icio.us
  • Bookmark ce code sur Google
  • Bookmark ce code sur Yahoo
  • Ajoute Fonction d'actualisation ou de fin de session
  • Partage ce code sur Facebook
 
 
 
 

Code Source


01.
02.
03.
04.
05.
06.
07.
08.
09.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
 
<?php
/******************************************************************************/
/*                                                                            */
/*                       __        ____                                       */
/*                 ___  / /  ___  / __/__  __ _____________ ___               */
/*                / _ \/ _ \/ _ \_\ \/ _ \/ // / __/ __/ -_|_-<               */
/*               / .__/_//_/ .__/___/\___/\_,_/_/  \__/\__/___/               */
/*              /_/       /_/                                                 */
/*                                                                            */
/*                                                                            */
/******************************************************************************/
/*                                                                            */
/* Titre          : Fonction d'actualisation ou de fin de session             */
/*                                                                            */
/* URL            : http://www.phpsources.org/scripts536-PHP.htm              */
/* Auteur         : Boustifire                                                */
/* Date édition   : 25 Nov 2009                                               */
/* Website auteur : http://ipodland.free.fr                                   */
/*                                                                            */
/******************************************************************************/


function actualiser_session()
{
    if ( isset($_SESSION['time']) ) // Test: Si il existe une session
    {
        $tempsMaxSession 3600;                            
// le temps maximal que dure la session en seconde

    if( ($_SESSION['time'] + $tempsMaxSession) >= time() )    
// Si la action sur la session date de moins de $tempsMaxSession
        $_SESSION['time'] = time();            // Session reactialisé
    else                                                    // Sinon
            session_destroy();                              // Session detruite

     }
}
?>

 

Fonctions du code

: Détermine si une variable est affectée - (PHP 4, PHP 5)
: Retourne le timestamp UNIX actuel - (PHP 4, PHP 5)
: Détruit une session - (PHP 4, PHP 5)
Commentaires
Bonjour
Au lieu d'initialiser la session 'time' en externe, ca serait mieux de le faire directement dans la fonction en ajoutant une condition à la fin du snippet...

   if ( isset($_SESSION['time']) ) // Test: Si il existe une session
    {
    ...
    }

     else
     {
      $_SESSION['time'] = time(); // Initialise la session avec l'heure
     }

et vu qu'on doit mettre cette fonction tout en haut de chaque script, pourquoi ne pas inclure le session_start(); également dans la fonction ?
et pour terminer passer le parametre du temps dans la fonction, au final ca donnerai actualiser_session(3600);
 
Hum, tu a raison pour le time, mais bon pour le temps de la session en parametre de fonction, je ne trouve pas utile.

j'essayerai de changer sa dans l'aprem, merci :)
 
je propose de créer une autre fonction en complement de ta fonction
function demarrer_session() {     session_start(); 
$_SESSION['time']= time();    }
et de l'inclure dans le même fichier que ta fonction on pourra donc faire
au moment de la connexion d'un utilisateur

demarrer_session(); actualiser_session();
 
Ajouter un commentaire
Code de sécurité

Attention: Les champs marqués d'une étoile * sont obligatoires
 
Librairie PHP

Connexion

 
 

Sessions

 
 

PHP

 
 
 
 
    Offres d'emploi

Plus de 500 offres d'emploi PHP/MySQL

Offres d'emploi
 
    Editeur PHP
 
        Publicité