Foros del Web » Programando para Internet » PHP »

Usuarios activos con php

Estas en el tema de Usuarios activos con php en el foro de PHP en Foros del Web. Hola: Tengo el siguiente script para contar los usuarios activos, (sin BD). Funciona pero siempre muestra 1 usuario activo ¿ Me pueden ayudar ? <? ...
  #1 (permalink)  
Antiguo 10/02/2005, 15:15
 
Fecha de Ingreso: diciembre-2002
Mensajes: 7
Antigüedad: 15 años
Puntos: 0
De acuerdo Usuarios activos con php

Hola:
Tengo el siguiente script para contar los usuarios activos, (sin BD).
Funciona pero siempre muestra 1 usuario activo
¿ Me pueden ayudar ?

<? $archivo="usuarios.txt"; //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,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
//Ten en cuenta que la variable $contar contiene el nº de usuarios activos
if ($contar==1){$contar="1 usuario activo";}else{$contar="$contar usuarios activos";}
echo $contar; //Lo mostramos por pantalla
?>

Cuando lo pruebo, lo hago desde varios computadores de un cybercafé, sin embargo el contador no aumenta, siempre queda en 1
  #2 (permalink)  
Antiguo 10/02/2005, 16:18
 
Fecha de Ingreso: julio-2003
Ubicación: España
Mensajes: 723
Antigüedad: 14 años, 4 meses
Puntos: 0
Seguramente en tu php.ini tengas register_globals = off, de manera que $REMOTE_ADDR no funciona bien, debes poner $_SERVER['REMOTE_ADDR'].

Saludos.
__________________
Solo nosotros podemos decidir qué hacer con el tiempo que se nos ha dado. (Gandalf)
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 05:53.