Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/06/2004, 12:38
DjNelson
 
Fecha de Ingreso: julio-2003
Ubicación: España
Mensajes: 723
Antigüedad: 20 años, 9 meses
Puntos: 0
Lista de usuarios online

Hace un par de semanas preguntana por cómo hacer un script para saber el número de usuarios online. Este script cumple su función correctamente:

<?php

$archivo="users_online.nel"; //archivo donde almacenarán los usuarios activos
$inactivo=600; //tiempo en segundos en que un usuario estará inactivo
$contar=0;

$fp=fopen($archivo,"r");
$tiempo=time();
$contenido=fread($fp,1024);/*En vez de 1024 podemos poner: filesize($archivo)*/
fclose($fp);

$lineas=split("\n",$contenido);
$filas=file($archivo);

for ($a=0; $a < sizeof($filas); $a++) {
$datos=split(':',$lineas[$a]);
$descontar=$tiempo-$inactivo;

if ($datos[0] != $REMOTE_ADDR && $datos[1] > ($descontar)) {
$res.= $datos[0].":".$datos[1]."\n";
$contar++;
}
}

$res.="$REMOTE_ADDR:$tiempo\n";

$contar++; // Ya tenemos el total de usuarios activos
$fp=fopen($archivo,"w");
fwrite ($fp,$res);
fclose($fp);

//Ahora damos formato a la salida, modifica esto a tu gusto
echo "<table id=\"usersonline\" class=\"bc\" border=\"1\" align=\"left\" cellpadding=\"5\" width=\"165\">\n<tr><th>Usuarios:</th></tr>\n
<tr><td class=\"b1tLf10\">";
echo "Usuarios online :<b>".$contar."</b>";
echo "</td></tr></table>";
?>

Pero ahora me gustaría sacar también un listado de los usuarios que están conectados y no simplemente contarlos...

Pero no tengo idea de cómo hacerlo...

Dónde puedo mirar cuáles son las variables superglobales tipo $REMOTE_ADDR?

Si sirve de algo los usuarios registrados tienen una cookie que guarda su nombre...

Haber si alguien me puede echar un cable.

Saludos y gracias.
__________________
Solo nosotros podemos decidir qué hacer con el tiempo que se nos ha dado. (Gandalf)