PHP sessions Session management
More on session management
The following code tracks whether a session is active and ends the session
if there has been no activity for more then 30 minutes
if ( isset ( $_ SESS I ON [ ' LAST _ ACTIV I TY ' ]) &&
( t ime () - $_SE S SION [ ' LA S T_AC T I VITY ' ] > 1800 )) {
// last re que st was more than 30 mina tes ago
se s s ion_d e s troy (); // d est roy se ssi on dat a in stor age
$_ S ESS I ON = arr ay (); // unset s ess ion var iabl es
if ( se s sio n _id () != "" || is set ( $ _C OOKI E [ sess i o n_na m e ()]))
se tcoo kie ( se s sion _ n ame () , se s sion _id () , time () -2592000 , ' / ' );
} else {
// upd ate last ac tiv ity tim e stam p
$_ S ESS I ON [ ' LAST_ A CTIV I T Y '] = time ();
}
The following code generates a new session identifier every 30 minutes
if (! i sset ( $_ SESS I ON [ ' CR EATE D ' ])) {
$_ S ESS I ON [ ' CRE ATE D ' ] = time ();
} else if ( time () - $ _ SESS ION [ ' CR EAT ED ' ] > 1800 ) {
// sess ion s tar ted more tha n 30 minates ago
ses s i o n_rege n e r a te_id ( t ru e );
$_ S ESS I ON [ ' CRE ATE D ' ] = time ();
}
http://stackoverflow.com/questions/520237/how-do-i-expire-a-php-session- after- 30-minutes
COMP284 Scripting Languages Lecture 7 Slide L7 – 34