Foros del Web » Programando para Internet » PHP »

Problema con LogOut

Estas en el tema de Problema con LogOut en el foro de PHP en Foros del Web. Saludos Muchachos, mi problema es el siguiente, despues de tanto darle a las sesiones con libros, internet y rematarlos de tantas preguntas a cluster y ...
  #1 (permalink)  
Antiguo 04/02/2004, 17:04
 
Fecha de Ingreso: diciembre-2003
Mensajes: 148
Antigüedad: 14 años
Puntos: 0
Pregunta Problema con LogOut

Saludos Muchachos,

mi problema es el siguiente, despues de tanto darle a las sesiones con libros, internet y rematarlos de tantas preguntas a cluster y josemi, ya lo estoy manejando bien.

El problema es el siguiente, al crear una sesion, esta no se
destruye hasta que le haga el sesion_destroy(), no es cierto?. Donde puedo encontrar esto, lógicamente en el logout, pero como uds. se habrán dado cuenta la mayoría de gente solo le da "x" a la ventana y bye. Esto quiere decir q la sesion sigue vigente, como la puedo destruir???

Saludos
Rubén
  #2 (permalink)  
Antiguo 04/02/2004, 17:18
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 6 meses
Puntos: 16
Hola,

Las sesiones de PHP tienen un sistema de "recogida de basura" (garbage collector) que se control con las directivas de sesion gc_*.

Con esas directivas puedes especificar despues de cuanto tiempo se caduca la sesion despues de no ser accedida en determinado tiempo. Una vez caducada, puede ser eliminada fisicamente el fichero.

Asi la sesion caduca despues de x segundos desde la ultima vez que fue accedida.

Saludos.

PD: Viene algo mas explicado en www.php.net/session .
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 04/02/2004, 23:03
Avatar de sism82  
Fecha de Ingreso: octubre-2003
Ubicación: Guadalajara
Mensajes: 865
Antigüedad: 14 años, 1 mes
Puntos: 1
mmm... yo tenía entendido que al cerrar el navegador la sesión ya no sigue vigente. No es así?
  #4 (permalink)  
Antiguo 05/02/2004, 01:13
 
Fecha de Ingreso: diciembre-2003
Mensajes: 148
Antigüedad: 14 años
Puntos: 0
Que tal sism82, cuando sales a la mala nunca destruyes la sesion, nunca le hicistes el session_destroy() y aparte muchas cosas más como borrar las variables de sesion y cookies asociadas y demás cosas.

Josemi lo que no me explico es porque al session.gc_maxlifetime le he puesto 30 segundos y aun igue funcionando despues de eso. A que te refieres que no usa la sesion, a que no pasa por un session_start() ????

Saludos
Rubén
  #5 (permalink)  
Antiguo 05/02/2004, 02:56
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 6 meses
Puntos: 16
Si, en principio si me refiero a pasar por un session_start(). No estoy seguro, pero al hacer el session_start() accede al fichero de la sesion, con lo que se actualiza su fecha de modificacion, que es en lo que se basa el manejador de sesiones por ficheros, que es el "por defecto" de PHP.

Y como pone en www.php.net/session , en gc_maxlifetime, en windows con FAT (w98) esto no funciona por culpa del sistema de ficheros FAT (imagino que con NTFS si funciona). Asi que puede seguir existiendo la sesion por siempre jamas en ese servidor (aunque w98 no creo que este en muchos servidores, como mucho en equipos locales para pruebas).

Y cuando cierras la ventanas del navegador, si que destruyes la cookie donde se propaga el id de sesion. Y sin ese id de sesion no pudes acceder a esa sesion.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
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 03:37.