Ver Mensaje Individual
  #9 (permalink)  
Antiguo 26/04/2012, 09:59
Avatar de SirDuque
SirDuque
 
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 2 meses
Puntos: 89
Respuesta: Cierre de sesion por inactividad

Deberias, adaptar inactivo.php al archivo que controla la session, y el codigo es medio complejo, para el procedimiento.
Que te parece algo como esto:
Código PHP:
<?php 
session_start
();
if(!isset(
$_SESSION['usuario'])){// Esta logeado?.
 
header("Location: logout.php"); 
}
// La variable $_SESSION['usuario'] es un ejemplo.

//Verifico el tiempo si esta seteado, caso contrario lo seteo.
if(isset($_SESSION['time'])){
 
$tiempo $_SESSION['time'];
}else{
 
$tiempo strtotime(date("Y-m-d H:i:s"));
}

$inactividad =3600;   //Exprecion en segundos.

$actual =  strtotime(date("Y-m-d H:i:s"));

if( (
$actual-$tiempo) >= $inactividad){
 
header("Location: logout.php");
 
// En caso que este sea mayor del tiempo seteado lo deslogea.
}else{
 
$_SESSION['time'] =$actual;
}
?>
EL mismo codigo optimizado:
Código PHP:
<?php 
session_start
();
if(!isset(
$_SESSION['usuario']))header("Location: logout.php"); 
$tiempo = (isset($_SESSION['time'])) ? $_SESSION['time'] : strtotime(date("Y-m-d H:i:s"));
$actual =  strtotime(date("Y-m-d H:i:s"));
((
$actual-$tiempo) >= 3600) ? header("Location: logout.php") : $_SESSION['time'] =$actual;
?>
__________________
Mono programando!
twitter.com/eguimariano