Foros del Web » Programando para Internet » PHP »

Problema con variables de session

Estas en el tema de Problema con variables de session en el foro de PHP en Foros del Web. Hola a todos tengo un inconvenient e investigado y no encuentro la forma de solucionarlo. Lo que sucede es que tengo una aplicacion web donde ...
  #1 (permalink)  
Antiguo 27/06/2009, 12:03
 
Fecha de Ingreso: noviembre-2008
Ubicación: lima
Mensajes: 148
Antigüedad: 16 años
Puntos: 0
Exclamación Problema con variables de session

Hola a todos tengo un inconvenient e investigado y no encuentro la forma de solucionarlo.

Lo que sucede es que tengo una aplicacion web donde se loguean los usuarios, cuando se loguean guardo en una variable de session el id del usuario, en este caso el campo id de mi tabla usuarios de la BD.

En la aplicaión interna los usuarios ingresan registros como clientes y esos clientes se guardan en la BD y estos clientes tienen un campo que indica que usario los registró.

Aquí esta el problema, que pasado un tiempo ya no guarda el identificador del usuario que registro al cliente

Creo que es por la duración de las variables de session, pero me he dado cuenta que el tiempo que pasa es menor a los 24 minutos que comunmente duran estas variables.

No puedo modificar el php.ini pues mi aplicacion esta alojada en un servidor.

Le puse un nombre a mi session por que es lo mas recomendable.


Y quisiera que cuando caduque la session me desloguee automaticamente, asi como sucede aquí en foros del web.

Por favor espero sus sugerencias y coemntarios.

Gracias.

Fiorella.
  #2 (permalink)  
Antiguo 27/06/2009, 12:16
Avatar de acoevil  
Fecha de Ingreso: julio-2008
Ubicación: localhost/colombia/sevillaValle.php
Mensajes: 1.123
Antigüedad: 16 años, 3 meses
Puntos: 32
Respuesta: Problema con variables de session

Esta funcion lo que hace es traer la hora actual y compararla con la hora de entrada del usuario (la hora de entrada podria ser un campo en la DB ) y si el tiempo transcurrido es mayor a X destruyo las sessiones, y lo redirecciono a index.php para que se loguie de nuevo, de lo contrario actualiza la hora de entrada del usuario.

function inactividad()
{
$hora_actual=date("H:i:s");
$hora_entrada=$_SESSION["hora_entrada"];
$trans=(strtotime($hora_actual)-strtotime($hora_entrada));
if($trans>=600) // <- tiempo transcurrido
{

header("location:index.php");
session_destroy();
exit();


}
$_SESSION["hora_entrada"]=date("H:i:s");
}
  #3 (permalink)  
Antiguo 27/06/2009, 12:26
 
Fecha de Ingreso: noviembre-2008
Ubicación: lima
Mensajes: 148
Antigüedad: 16 años
Puntos: 0
Respuesta: Problema con variables de session

lo que sucede es que pasando un tiempo muy pequeño los valores de las variables de session se borran,

Y si guardo en un avariable de session la hora de entrada pues tambien esa variable se perderia.
  #4 (permalink)  
Antiguo 27/06/2009, 12:39
Avatar de acoevil  
Fecha de Ingreso: julio-2008
Ubicación: localhost/colombia/sevillaValle.php
Mensajes: 1.123
Antigüedad: 16 años, 3 meses
Puntos: 32
Respuesta: Problema con variables de session

Este link te puede servir

http://www.forosdelweb.com/f18/sesio...19/#post606558

http://www.php.net/ini_set

http://www.php.net/manual/es/ini.list.php

Un ejemplo ini_set("session.gc_maxlifetime", "28800");
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 22:29.