Hola a todos ! estoy desarrollando un sitio que registra usuarios pero por su seguridad quiero que si pasa mas de 10 min inactivo se le cierre la sesion y redireccione al login nuevamente tengo el siguiente codigo que lo hace:
Código PHP:
<?php
session_start();
if (isset($_SESSION["autenticado"])&&($_SESSION['autenticado'] != ""))
{
//calculamos el tiempo transcurrido
$fechaGuardada = $_SESSION["ultimoAcceso"];
$ahora = date("Y-n-j H:i:s");
$tiempo_transcurrido = (strtotime($ahora)-strtotime($fechaGuardada));
//comparamos el tiempo transcurrido
if($tiempo_transcurrido >= 20)
{
//si pasaron 10 minutos o más
session_destroy(); // destruyo la sesión
header("Location: ../pag_usuarios/login.php?s=1"); //envío al usuario a la pag. de autenticación
//sino, actualizo la fecha de la sesión
}else{
$_SESSION["ultimoAcceso"] = $ahora;
}
}
?>
pero solo funciona si actualizo la misma pagina pero si llego despues de 10 y clickeo otro link a una pagina x, la sesion le continua abierta, entonces como haria para q le cierre la sesion y lo redireccione a penas se cumpla el tiempo limite ? ayuda por favor
NOTA: la
Código PHP:
$_SESSION["ultimoAcceso"];
la creo cuando se logea y entra a su perfil.