Test Foro de elhacker.net SMF 2.1

Programación => Desarrollo Web => PHP => Mensaje iniciado por: kakashi20 en 27 Enero 2011, 21:12 PM

Título: ayuda session php
Publicado por: kakashi20 en 27 Enero 2011, 21:12 PM
hola

tengo este codigo para las sesiones en php pero quiera que la sesion se destruyera por inactividad por ejemplo que el usuario este inactivo 5 minutos y ahi la sesion se cerrara sola.

<?php
session_start();
require("configuracion.php");

if(!isset($_SESSION['usuario'])){
      header("Location: index.php");
}else{

}
?>

Si alguien me pudiese ayudar se lo agradecería
Título: Re: ayuda session php
Publicado por: madpitbull_99 en 27 Enero 2011, 21:47 PM
Cuando el usuario se identifica (log in) tienes que guardar la hora en una variable de sesión:

Código (php) [Seleccionar]
$_SESSION['tiempoLogin'] = time();

Y en cada pagina verificar el valor de tiempoLogin:

Código (php) [Seleccionar]
if($_SESSION['tiempoLogin'] < time()+20*60){ salir(); }

En el script de abajo puedes hacerte una idea de como implementarlo.

Código (php) [Seleccionar]
session_start();

// el tiempo de validez
$inactivo = 600;

// comprobar el tiempo de validez
if(isset($_SESSION['validez']) ) {
$tiempo_vida = time() - $_SESSION['validez'];
if($tiempo_vida > $inactivo)
        { session_destroy(); header("Location: salir.php"); }
}
$_SESSION['timeout'] = time();

Título: Re: ayuda session php
Publicado por: zarkiel en 28 Enero 2011, 21:19 PM
Tambien puedes utilizar cookies.
Código (php) [Seleccionar]


// el tiempo de validez
$inactivo = 300; //el tiempo q durará la sesion en segundos
setcookie('usuario','zarkiel',time()+$inactivo,'/','');



Y para obtener el valor de la cookie utilizas:

Código (php) [Seleccionar]
echo $_COOKIE['usuario'] // imprime zarkiel

Ojalá te sirva saludos.
Título: Re: ayuda session php
Publicado por: kakashi20 en 2 Febrero 2011, 02:25 AM
gracias, fue de gran ayuda....