Foros del Web » Programando para Internet » PHP »

Como hacer que una session se destruya si esta inactivo

Estas en el tema de Como hacer que una session se destruya si esta inactivo en el foro de PHP en Foros del Web. quisiera que cuando una session tenga 5 minutos inactiva se destruya automaticamente, quiero hacerlo con session porque ya llevo mucho codigo entonces no quisiera pasar ...
  #1 (permalink)  
Antiguo 11/07/2010, 16:16
 
Fecha de Ingreso: junio-2010
Ubicación: Venezuela, Zulia
Mensajes: 686
Antigüedad: 13 años, 9 meses
Puntos: 55
Como hacer que una session se destruya si esta inactivo

quisiera que cuando una session tenga 5 minutos inactiva se destruya automaticamente, quiero hacerlo con session porque ya llevo mucho codigo entonces no quisiera pasar a usar cookies.

de alguien saber si me lo pueden explicar como una funcion, para solo agregar el include a cada pagina y sea mas sencillo adaptar el codigo
  #2 (permalink)  
Antiguo 11/07/2010, 16:18
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: Como hacer que una session se destruya si esta inactivo

session usa internamente una cookie, en el php.ini o con ini_set() puedes determinar su espiración
  #3 (permalink)  
Antiguo 11/07/2010, 16:19
 
Fecha de Ingreso: junio-2010
Ubicación: Venezuela, Zulia
Mensajes: 686
Antigüedad: 13 años, 9 meses
Puntos: 55
Respuesta: Como hacer que una session se destruya si esta inactivo

la cuestion es que en el servidor que estoy no puedo manejar el php.ini, y tampoco creo que me hagan el favor ya que es gratuito

tambien intente usar session_cache_expire() pero no supe
  #4 (permalink)  
Antiguo 11/07/2010, 16:21
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: Como hacer que una session se destruya si esta inactivo

puedes usar ini_set() para cambiar el parámetro en tiempo de ejecución antes de llamar a session_start(), pero si el hosting es gratuito es posible que te lo impida
  #5 (permalink)  
Antiguo 11/07/2010, 16:23
 
Fecha de Ingreso: junio-2010
Ubicación: Venezuela, Zulia
Mensajes: 686
Antigüedad: 13 años, 9 meses
Puntos: 55
Respuesta: Como hacer que una session se destruya si esta inactivo

bueno mejor lo dejamos asi por ahora, porque estoy montando el proyecto en uno gratuito pero luego lo pondre en uno pago y pedire que modifiquen eso

Gracias
  #6 (permalink)  
Antiguo 11/07/2010, 23:25
Avatar de conkerick  
Fecha de Ingreso: febrero-2009
Ubicación: WWW
Mensajes: 75
Antigüedad: 15 años, 2 meses
Puntos: 2
Respuesta: Como hacer que una session se destruya si esta inactivo

También lo puedes hacer la siguiente forma:
  • Guardas en una variable de sesión la fecha y hora en que un usuario cargó una página.
  • Cada vez que el usuario cargue una página nueva, comparas si hay una diferencia de X tiempo entre la fecha de la sesión y la del servidor, en caso de ser positivo, es decir, que haya pasado ese X tiempo, rediriges al usuario a una página de logout o a donde quieras, y en caso de ser negativo, actualizas la sesión con la nueva fecha y hora.

Espero haberme explicado, saludos.
  #7 (permalink)  
Antiguo 16/07/2010, 18:51
 
Fecha de Ingreso: junio-2010
Ubicación: Venezuela, Zulia
Mensajes: 686
Antigüedad: 13 años, 9 meses
Puntos: 55
Respuesta: Como hacer que una session se destruya si esta inactivo

entiendo lo que dices pero nose como aplicarlo a una funcion, para solo agregar un inlude en cada pagina
  #8 (permalink)  
Antiguo 22/07/2010, 00:55
Avatar de conkerick  
Fecha de Ingreso: febrero-2009
Ubicación: WWW
Mensajes: 75
Antigüedad: 15 años, 2 meses
Puntos: 2
Respuesta: Como hacer que una session se destruya si esta inactivo

Lamento la tardanza, problemas de conexión. Acá te dejo más información:

http://www.desarrolloweb.com/articulos/1991.php

Avísame si te funciona o tienes alguna otra duda, saludos ;)

Etiquetas: session
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 12:07.