Foros del Web » Programando para Internet » PHP »

La Sesion no caduca

Estas en el tema de La Sesion no caduca en el foro de PHP en Foros del Web. Benas: Tengo dos paginas (pag1.php y pag2.php) Al pasar de una a otra si tardo mas de 120segundos la sesion debería haber caducado y no ...
  #1 (permalink)  
Antiguo 17/02/2011, 06:58
 
Fecha de Ingreso: febrero-2011
Mensajes: 7
Antigüedad: 13 años, 1 mes
Puntos: 0
La Sesion no caduca

Benas:
Tengo dos paginas (pag1.php y pag2.php)
Al pasar de una a otra si tardo mas de 120segundos la sesion debería haber caducado y no lo hace.
¿Me poeis dar alguna pista?
Creo que modifico todo lo que he leido que afecta a la duración de las sesiones.
Muchas Gracias.
Estos son los ficheros:
Pag1
Código PHP:
<?php
$lifetime_ini
=ini_get("session.gc_maxlifetime");
ini_set("session.gc_probability",100);
ini_set("session.gc_divisor",100);
ini_set("session.gc_maxlifetime",120);
ini_set("session.cookie_lifetime",120);
ini_set("session_cache_limiter",private);
ini_set("session_cache_expire",2);//2 minutos
ini_set("session.use_trans_sid",0);
ini_set("session.use_cookies",1);
ini_set("session.use_only_cookies",1);
session_start();
$lifetime_new=ini_get("session.gc_maxlifetime");
?>
<html>
<head>
</head>
<center>
Pag1 <br><br><br>
<?php
 
echo "session_id es: *".session_id()."*<br>";
 echo 
"Duracion INICIAL de la sesión: ".$lifetime_ini ."<br>";
 echo 
"Duracion NUEVA de la sesión: ".$lifetime_new ."<br>";
 echo 
"Hora: ".date('g:i:s')."<br>";
 echo 
"<BR><BR><BR>Pulse <a href='pag2.php'>aqu&iacute;</a> para continuar";
?>
</center>
</body>
</html>
Pag2
Código PHP:
<?php
// Inicializamos sesion
$ses_ini=session_id();
ini_set("session.gc_probability",100);
ini_set("session.gc_divisor",100);
ini_set("session.gc_maxlifetime",120);
ini_set("session.cookie_lifetime",120);
ini_set("session_cache_limiter",private);
ini_set("session_cache_expire",2);//2 minutos
ini_set("session.use_trans_sid",0);
ini_set("session.use_cookies",1);
ini_set("session.use_only_cookies",1);
session_start();
$ses_new=session_id();
?>
<HTML>
<HEAD>
</HEAD>
<BODY>
<CENTER>
Pag2 <br><br><br>
<?php
echo "Id de sesion antes de session_star(): *".$ses_ant."*<br>\n";
echo 
"Id de sesion despues de session_star():: *".$ses_new."*<br>\n";
echo 
"Hora: ".date('g:i:s')."<br>\n";
echo 
"Duracion de la sesión: ".ini_get("session.gc_maxlifetime") ."<br>\n";
?>
</CENTER>
</BODY>
</HTML>
  #2 (permalink)  
Antiguo 17/02/2011, 15:50
Avatar de enlinea777  
Fecha de Ingreso: mayo-2008
Ubicación: frente al pc
Mensajes: 1.830
Antigüedad: 15 años, 10 meses
Puntos: 127
Respuesta: La Sesion no caduca

pues es facil.
estas iniciando sesiones en cada pagina, cuando recargas la pagina automaticamente creas una nueva sesion.

para trabajar con sesiones hay que tomar en cuenta estos 3 pasos.

1 hacer una pagina de login lacual envie los datos a otra pagina que grave las sesiones.
esta pagina las graba y automaticamente te redirecciona a una pagina que valideo de lo contrario te reenvie a la pagina de login.

2 saver que para registar seciones no hay que tener esta funcion "session_start()" .

3 para poder verificar una sesion registrada solo hay que tener al principio el "session_start()".


mas datos aqui:
http://enlinea.creaelicita.cl/guia/f...-register.html
y aqui:
http://www.desarrolloweb.com/articulos/235.php
  #3 (permalink)  
Antiguo 18/02/2011, 02:53
 
Fecha de Ingreso: febrero-2011
Mensajes: 7
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: La Sesion no caduca

Hola:
segun el manual :
Cita:
session_start() crea una sesión o reanuda la actual basada en un identificador de sesión pasado mediante una petición GET o POST, o pasado mediante una cookie.
Debe de faltar algun otra cosa.
Dando actualizar a Pag1 (sin ir a Pag2) si no han pasado los 120 segundos debería mantener el mismo id de sesion.

gracia.

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:15.