Ver Mensaje Individual
  #6 (permalink)  
Antiguo 17/11/2004, 14:41
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
perdona mi ignoracia pero entonces amigo(s) que me aconsejan para poder llevar el control y borrado de sessiones ,saber que sesiones estan realmente activas, porque al cerrar la ventana de mi sitio borro la session y es para no esperar al proceso de recoleccion de basura pero bueno
Con sesiones se trabaja como te he descrito .. no es lo mismo que el SID expire que el archivo físico de esa sesión sea borrado por el proceso de "garbage".

Por ejemplo .. si propagas el SID en cookies (session.use_cookies) y estas están ajustado su tiempo de expiración a "0" .. Si cierras tu última ventana de tu sitio .. la cookie muere y con el el SID que hace el enlace de ese "cliente" con el "servidor".

Cita:
Tengo un modulo donde veo que usuarios tengo en linea, aqui cuando el usuario se autentifica se crea la sesion y se realiza una insercion en una tabla para los usuarios en linea, los datos que almaceno son el session_id y datos del usuario que se crearon en la sesión

Menciono esto porque se relaciona con el borrado de sesion que hago al cerrar el sitio o al cambiar a otro.
Si tienes problemas con el SID "regenarción" .. tienes la función:
session_regenerate_id()

Podrías usar esa función al hacer un login tu usuario (por si cambia en una misma sesión de usuario) .. Eso sí . .habiendo borrado también tus datos de esa sesión o usando un session_destroy() y esa función para que no tome los valores anteriores si algo dejastes en la sesión anterior.

Cita:
En este modulo de quien esta en linea checa el session_id que se registro exista en la carpeta donde se crean los tmp si no existe al ser el refresh(que es cada 10 seg)borra el registro de la tabla y entonces podria decirse que el usuario no esta en linea.
Si bien en tu caso particular por los permisos que tienes sobre tu servidor y pocas restricciones puedes acceder a tu "tmp" de sesiones para contar "archivos" (trala la xD) .. en otras condiciones no vas a poder hacer eso (en general en cualquier configuración algo "decente" segura .. no podrás "salir" con PHP y sus funciones de archivos u otras funciones del sistema para acceder a ese directorio).

Te hice el comentario que en las FAQ's de este foro tienes la solución al tema .. con su "margen de error" pues se trata de asumir ciertos tiempos que debes considerar como que tu usuario está "inactivo" (que no "pide" páginas al servidor vía links, refrescos .. formularios que envia .. etc).

Cita:
Pero si descarto mi proceso de eliminar la sesión al cerrar la ventana no va ver coherencia en el modulo de usuarios en linea ,como puedo manejar ¿que las sessiones estan realmente activas?.Porque si quito ese proceso, en el listado de usuarios en linea seguira en linea hasta que el proceso de recoleccion actue que me aconsejan.??????????????
Arriba te he comentado como solventarlo.

Un saludo,