Ver Mensaje Individual
  #2 (permalink)  
Antiguo 04/07/2013, 14:47
Avatar de stramin
stramin
 
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 9 meses
Puntos: 336
Respuesta: Refrescar y cerrar sesion por inactividad

Eso debes hacerlo con Javascript.

Cada vez que navegues en alguna página debes calcular el tiempo restante y generer setTimeOut con JS para que ejecute la accíon, por ejemplo:

Código HTML:
Ver original
  1. <script language="javascript">
  2. <?php
  3. $timeout = 1;
  4.    $logout_redirect_url = "logout.php";  
  5.  
  6.    $timeout = $timeout * 60;  
  7.    if (isset($_SESSION['start_time'])) {
  8.        $elapsed_time = time() - $_SESSION['start_time'];
  9.        $elapsed_time*=1000; // Suponiendo que el tiempo lo tienes en segundos debes multiplicar por 1000 ya que JS funciona con milisegundos
  10.        echo "setTimeOut(location.href('$logout_redirect_url'),$elapsed_time);"
  11.    }
  12.    $_SESSION['start_time'] = time();
  13. ?>

Espero no haberme equivocado en anda, no lo he probado, pero es algo así

setTimeOut realiza una accion del lado cliente tras cierta cantidad de tiempo.

location.href define una url tambien para el cliente.

Ambas cosas puedes darselas a JS usando PHP como he puesto en el ejemplo :)
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D