Ver Mensaje Individual
  #4 (permalink)  
Antiguo 18/11/2006, 10:24
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Cita:
Iniciado por david_M_G Ver Mensaje
En realidad se hace que los usuarios ingresen y se cree una SESSION entre el cliente y el servidor. Para mostrar los usuarios activos, solo cabe mostrar la lista de SESSIONES establecidas. Yo personalmente no lo he hecho nunca.

Más información sobre las sessiones:
www.php.net/session
Una sesión sólo o el uso de sesionse -sólo- no te servirá para ese propósito .. De hecho no tienes forma de ver las sesiones "creadas" ni los datos de todas las sesiones o alguna en forma individual desde otro cliente. Recuerda que las sesiones son -únicas- para el cliente que las crea .. ningún otro cliente puede ver las sesiones creadas por otros.

Por eso es necesario usar un médio "común" para almacenar la información de los usuarios que están activos y que tus scripts (lanzados a ejecutar por cualquier cliente) pueda acceder a esa información. Por ejemplo .. usa una Base de datos o lo que gustes ..

Un ejemplo práctico de esto sería:
http://www.forosdelweb.com/showpost....45&postcount=3

Si se fijan se trata de establecer la fecha/hora de ingreso de tu usuario y a cada iteracción con el servidor (ejecucución de tus scripts) actualizar el dato de esa fecha de "última actividad en el sistema" .. así tendrás que considerar un "margen de error" que será el tiempo que tu definas como que un usuario si no ha realizado una petición al servidor (una página pedida por el URL en un link .. o redireccionamiento, recarga de página, "submit" de un formulario .. etc), consideraras al usuario como ya no activo en tu sistema.

En el ejemplo suministrado se basa en la "IP" del cliente, .. perfectamente puedes sustituir ese dato por el usuario activo en tu sistema si le haces seguimiento por cookies o sesiones (en lugar de almacenar y trabajar con $_SERVER['REMOTE_ADDRR'] .. usarías tu variable de sesión o cookie que identifica al usuario activo en tu sistema: $_SESSION['id_usuario'] .. o lo que uses).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.