• Domingo 22 de Diciembre de 2024, 07:47

Autor Tema:  Sesiones infinitas  (Leído 2543 veces)

Ensy

  • Nuevo Miembro
  • *
  • Mensajes: 19
  • Nacionalidad: es
    • Ver Perfil
Sesiones infinitas
« en: Lunes 29 de Septiembre de 2008, 14:55 »
0
Hola!!

Me gustaría saber si hay alguna manera de que la sesión perdure mientras que no se cierre el explorer aunque la aplicación esté inactiva.

Yo creo que tiene que haber alguna variable en el php.ini o en el otro fichero de configuración pero no me atrevo a tocar ahí sin saber fijo lo que tengo que cambiar.

Muchas gracias!!

shadow_rev

  • Miembro MUY activo
  • ***
  • Mensajes: 397
  • Nacionalidad: co
  • Un SPARTAN no muere en combate
    • Ver Perfil
    • http://shadowrev.blogspot.com
Re: Sesiones infinitas
« Respuesta #1 en: Lunes 29 de Septiembre de 2008, 21:06 »
0
Las variables del archivo php.ini las puedes cambiar en tiempo de ejecución con el comando ini_set(String $variable, String $valor), por si no quieres hacer un cambio permanente. Pero el valor que ponen allí (no recuerdo cuál es) es un valor por defecto; si no me equivoco, para controlar el tiempo de vida de una sesión, puedes utilizar session_cache_expire(). Encuentras más info en http://www.php.net/manual/es/ref.session.php

:suerte:
Volará quien le ponga alas a sus sueños (Candidate for goddess)
Si el mal existe en este mundo, reside en el corazón de la humanidad (Edward D. Morrison - Tales of Phantasia)
Lo único que puedes cambiar del pasado, es lo que sientes por él en el presente (Lockon Stratos - Mobile Suit Gundam 00)
Ingeniero de Sistemas

Ensy

  • Nuevo Miembro
  • *
  • Mensajes: 19
  • Nacionalidad: es
    • Ver Perfil
Re: Sesiones infinitas
« Respuesta #2 en: Martes 30 de Septiembre de 2008, 10:29 »
0
Hola!!

La variable en el php.ini es 'session.gc_maxlifetime' y su valor por defecto es '1140'.
Voy a utilizar ini_set() para modificar ese valor pero mi duda es: tengo que ponerlo al comienzo de todas las páginas o con cambiarlo en la de inicio ya me lo mantiene? Es decir, cuando vuelve a coger el valor por defecto el php.ini, cuándo cierro el explorer?

Muchas gracias!!

shadow_rev

  • Miembro MUY activo
  • ***
  • Mensajes: 397
  • Nacionalidad: co
  • Un SPARTAN no muere en combate
    • Ver Perfil
    • http://shadowrev.blogspot.com
Re: Sesiones infinitas
« Respuesta #3 en: Martes 30 de Septiembre de 2008, 15:38 »
0
Creo que es suficiente con cambiarlo en la de inicio, ya que cuando inicias una sesión, esta se almacena en una cookie que permanece hasta que cierras la sesión (cuando en la aplicación le pinchas en 'cerrar sesión', o cuando cierras el navegador si lo has configurado para que borre los datos de sesión). El valor por defecto en el php.ini lo retoma en otras aplicaciones, o cuando accedes a otro script distinto al inicial sin iniciar una sesión.

Te recomiendo que busques más opciones, creo que esa no es la única forma de controlar el tiempo de una sesión, y sinceramente, en el trabajo no me he visto en la necesidad de mantener sesiones abiertas, de modo que no tengo muchos datos sobre el control de estas :nosweat: .

:suerte:
Volará quien le ponga alas a sus sueños (Candidate for goddess)
Si el mal existe en este mundo, reside en el corazón de la humanidad (Edward D. Morrison - Tales of Phantasia)
Lo único que puedes cambiar del pasado, es lo que sientes por él en el presente (Lockon Stratos - Mobile Suit Gundam 00)
Ingeniero de Sistemas

Ensy

  • Nuevo Miembro
  • *
  • Mensajes: 19
  • Nacionalidad: es
    • Ver Perfil
Re: Sesiones infinitas
« Respuesta #4 en: Miércoles 1 de Octubre de 2008, 12:40 »
0
Ok, muchas gracias. Creo que lo voy a dejar así y más adelante buscaré otras formas de controlarlas. Esta me sirve para lo que quiero hacer ya que solamente quiero que se mantenga en una de las aplicaciones porque la dejan abierta y no quieren estar metiendo el usuario continuamente... En esta ocasión se puede adaptar al usuario ;)

Saludos!!