elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  [Pregunta]: Comportamiento de las $_SESSION
0 Usuarios y 2 Visitantes están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Pregunta]: Comportamiento de las $_SESSION  (Leído 4,094 veces)
Leguim


Desconectado Desconectado

Mensajes: 720



Ver Perfil
[Pregunta]: Comportamiento de las $_SESSION
« en: 2 Agosto 2021, 19:06 pm »

En relación a su tiempo de vida las sesiones en php me están dando un problema y es que a veces de la nada me cierra la sesión y me manda para el index.

Código
  1. ini_set('session.cookie_lifetime', 43200); // (12 hours)
  2. ini_set('session.gc_maxlifetime', 43200); // (12 hours)
  3.  

¿Será que el comportamiento sería que cuando una $_SESSION es inicializada desde ese punto hasta 12 horas INDEPENDIENTEMENTE de si cierro sesión va a esperar 12 horas para destruirla y por eso me está sacando sin que yo le diga? Pensaba que al cerrar sesión ese tiempo de vida quedaba inutilizable porque ya cerraba sesión, se eliminaban las sesiones.

En la parte del código cuando hago logout tengo unset($_SESSION['x']); y más abajo session_destroy();

EDIT: Se me pasó que esto va al foro de PHP


« Última modificación: 2 Agosto 2021, 19:09 pm por Leguim » En línea

Danielㅤ


Desconectado Desconectado

Mensajes: 1.832


🔵🔵🔵🔵🔵🔵🔵


Ver Perfil
Re: [Pregunta]: Comportamiento de las $_SESSION
« Respuesta #1 en: 2 Agosto 2021, 22:27 pm »

Hola, hasta donde tengo entendido, las cookies de sesión se destruyen al cerrar el navegador aunque le quede tiempo de vida, no es que va a esperar 12 horas para destruirse si ya al cerrar el navegador no tiene sentido que esa cookie de sesión exista, justamente por eso son cookies de sesión porque al crearlas se inicia una sesión con una cookie y al cerrar el navegador, la sesión se termina, es decir la cookie se destruye, porque sería:

Cerrar el navegador = Terminar/cerrar la sesión = La cookie de sesión la destruye el mismo navegador cuando se cierra

Ahora en el caso que vos quieras seguir usando una cookie después de que el navegador se cierra y se vuelve a abrir, entonces podes usar cookies permanentes.


Saludos


« Última modificación: 2 Agosto 2021, 22:34 pm por Danielㅤ » En línea

MinusFour
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.529


I'm fourth.


Ver Perfil WWW
Re: [Pregunta]: Comportamiento de las $_SESSION
« Respuesta #2 en: 2 Agosto 2021, 22:35 pm »

Eh, si tu destruyes la sesión te genera una nueva sesión si vuelves a visitar el sitio. A menos que el visitante no vuelva a visitar el sitio después de haber cerrado la sesión. Entonces si tu cierras la sesión por ejemplo a las 2 de la tarde, vuelves a visitar el sitio inmediatamente (se genera una sesión nueva) y te autentificas al día siguiente a las 12... la cookie expira a las 2 por lo que te "sacaría" del sitio (la sesión probablemente siga ahí). Dando la apariencia que solo ha durado 2 horas.

Si quieres puedes usar:

Código

Una vez que te hayas autentificado. De esta forma la cookie también debería regenerarse para obtener otras 12 horas.

Edit: Realmente no se genera una sesión después de destruirse una vez que revisites el sitio, aquí lo que me refiero es que muy probablemente tengas session_start en varios archivos que estos a su vez generan una sesión nueva.
« Última modificación: 2 Agosto 2021, 22:51 pm por MinusFour » En línea

Leguim


Desconectado Desconectado

Mensajes: 720



Ver Perfil
Re: [Pregunta]: Comportamiento de las $_SESSION
« Respuesta #3 en: 3 Agosto 2021, 04:18 am »

Eh, si tu destruyes la sesión te genera una nueva sesión si vuelves a visitar el sitio. A menos que el visitante no vuelva a visitar el sitio después de haber cerrado la sesión. Entonces si tu cierras la sesión por ejemplo a las 2 de la tarde, vuelves a visitar el sitio inmediatamente (se genera una sesión nueva) y te autentificas al día siguiente a las 12... la cookie expira a las 2 por lo que te "sacaría" del sitio (la sesión probablemente siga ahí). Dando la apariencia que solo ha durado 2 horas.

Si quieres puedes usar:

Código

Una vez que te hayas autentificado. De esta forma la cookie también debería regenerarse para obtener otras 12 horas.

Edit: Realmente no se genera una sesión después de destruirse una vez que revisites el sitio, aquí lo que me refiero es que muy probablemente tengas session_start en varios archivos que estos a su vez generan una sesión nueva.

Seguramente sea eso!
Voy a probar a ver si se me cierra la sesión, igualmente para estar seguro esa función sesión regenerate se usaría luego de las instrucciones cuando se hace login? (Digamos dejar esa función para lo último luego de crear los distintos arreglos $_SESSION['x'] y después de eso uso esa función correcto?
En línea

MinusFour
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.529


I'm fourth.


Ver Perfil WWW
Re: [Pregunta]: Comportamiento de las $_SESSION
« Respuesta #4 en: 3 Agosto 2021, 04:47 am »

Justo después que autentificas y antes de tocar cualquier cosa de la sesión de preferencia.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Pregunta con $_SESSION php
PHP
xalupeao 5 4,456 Último mensaje 14 Agosto 2009, 22:35 pm
por xalupeao
[Resuelto] [Pregunta]: ¿Un usuario se puede imprimir una $_SESSION?
PHP
Leguim 4 2,543 Último mensaje 1 Octubre 2019, 03:33 am
por engel lex
[Pregunta]: mejorar las $_SESSION'S
PHP
Leguim 1 1,869 Último mensaje 7 Octubre 2019, 14:05 pm
por MinusFour
(Pregunta): Como hacer que una $_SESSION determinada dure 2 horas. « 1 2 »
Desarrollo Web
Leguim 10 4,595 Último mensaje 3 Noviembre 2019, 17:55 pm
por Leguim
[Pregunta]: Impedir que una $_SESSION en particular se destruya
Desarrollo Web
Leguim 2 3,186 Último mensaje 21 Junio 2022, 19:49 pm
por MinusFour
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines