Foros del Web » Programando para Internet » PHP »

Sessiones

Estas en el tema de Sessiones en el foro de PHP en Foros del Web. Buenos días necesito controlar el tiempo de una sesión, pero soy nueva en php y no se como hacerlo me dijeron que con sesiones pero ...
  #1 (permalink)  
Antiguo 07/04/2004, 12:20
 
Fecha de Ingreso: marzo-2004
Ubicación: panamá
Mensajes: 9
Antigüedad: 13 años, 8 meses
Puntos: 0
Sessiones

Buenos días
necesito controlar el tiempo de una sesión, pero soy nueva en php y no se como hacerlo me dijeron que con sesiones pero estoy perdida... necesito saber como hacer: el usuario se loguea y despues de cierto tiempo de inactividad en la página restringida si intenta volver a usar la página despues de 10 minutos que me salga un mensaje que diga su sesión termino regrese al index... algo así por ejemplo... cree una tabla en donde guardo el tiempo cuando se loguea y entra a la página restringuida; esto lo hace bien, necesito crear una session para darle ese valor el del tiempo de entrada, para compararlo, cree algo así pero eso no creo que este bien...time_p es el nombre del campo donde guardo mi tiempo timestamp, $_SESSION['time_p'] = time() este codigo lo coloco en el index después de que se loguea; en la página restringida coloque este otro código
if($_SESSION['time_p']+3600>time()){
echo ("fin de sesion");
} //End of the if
pero esto no funciona... =-(
luego pense en hacer una función en donde hiciera un select buscando el tiempo de entrada y guardandolo en una sesión a esta session le sumo + 10 minutos o sea darle un tiempo de vida y comparar, si se pasa del tiempo que me cierre la sesión y me guarde el tiempo de salida... pero no se como hacerlo... gracias...
ojala puedan ayudarme... mil gracias de antemano....
  #2 (permalink)  
Antiguo 07/04/2004, 13:02
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
La directiva:

session.gc_maxlifetime del php.ini (ajustable también por ini_set()) ya hace lo que planteas.

Sólo tendrías que ajustar ese valor a tu tiempo deseado y verificar en todo momento la existencia de tus variables de sesión para determinar que la sesión expiró (por qué las sesión bajo ese SID ya no es válido).

En resumen .. Sea cual sea el método que uses para determinar tu "sesión" (tiempo) .. tienes que tener presente ese valor de la directiva del php.ini mencionada .. pues si intentas usar más tiempo del que ahí determina (en segundos va expresado) vas a tener problemas.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 14:28.