| 
<?PHP
// Ending Session info is important to clean up current active operations
 // Also unfinished abandoned sessions will be removed from the system
 
 $rs = new mysql_recordset("conn","SELECT * FROM tbl_active_sessions") ;
 if ($rs->query())
 {
 while (!$rs->movenext())
 {
 // This is just one way to do it, normally performance will not be compromised as
 // long concurrent sessions don't grow too much... in this case a 2 pass process
 // deleting directly based on tbl_active_sessions start time (first from tbl_carrito and then from
 // tbl_active_sessions will attune for improved performance.  Used this approach as it is far
 // more clear to understand than the 'advanced' method
 
 $timeactual = time(); //current time to check session expiry
 if ($rs->value("start") < $timeactual-10800) //expiration = 3 hours
 {
 // DELETE FROM active_sessions and from shopping basket tables
 $comm = new mysql_command("conn","DELETE FROM tbl_basket WHERE sessionid = '" . $rs->value("sessionid") . "'") ;
 $comm->execute() ;
 $comm->sqlstring = "DELETE FROM tbl_active_sessions WHERE sessionid = '" . $rs->value("sessionid") . "'" ;
 $comm->execute() ;
 }
 }
 $rs->clear_recordset() ;
 }
 ?>
 
 |