Foros del Web » Programando para Internet » PHP »

Tengo Un Problema

Estas en el tema de Tengo Un Problema en el foro de PHP en Foros del Web. Hola... el otro dia pregunte por un contador de personas activas en mi web y me dieron esto: Tema: Usuarios activos Pregunta: ¿Cómo sé los ...
  #1 (permalink)  
Antiguo 30/06/2003, 10:43
Avatar de Sebastian1046  
Fecha de Ingreso: junio-2003
Mensajes: 278
Antigüedad: 14 años, 6 meses
Puntos: 0
Pregunta Tengo Un Problema

Hola... el otro dia pregunte por un contador de personas activas en mi web y me dieron esto:

Tema: Usuarios activos
Pregunta: ¿Cómo sé los usuarios activos que hay en mi web?
Respuesta:

Tu servidor debe admitir funciones de lectura y escritura en archivos de texto.
Empezamos creando un archivo usuarios.txt EN BLANCO.
A continuación creamos otro archivo activos.php cuyo contenido sea:


PHP:--------------------------------------------------------------------------------
<? $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
?>

--------------------------------------------------------------------------------
Finalmente subes el activos.php y el usuarios.txt a tu server. Y luego en el lugar de tu página donde quieras ver los usuarios activos pones:
PHP:--------------------------------------------------------------------------------
<? include "activos.php"; ?>

--------------------------------------------------------------------------------
Como puedes observar, puedes cambiar la ruta del archivo usuarios.txt (p. ej.: "../../usuarios.txt"); en este caso he supuesto que la aplicación y el archivo auxiliar están en la misma carpeta.

¡¡¡Espero que les sea de ayuda!!!
Saludos



Pero no me funciona...no se por que ..... puede se por que lo tengo puesto en un frame... o no se alguien me ayuda?
  #2 (permalink)  
Antiguo 30/06/2003, 10:53
V_G
Invitado
 
Mensajes: n/a
Puntos:
¿Que problema te dá?

PD: Están bien instalado?
  #3 (permalink)  
Antiguo 30/06/2003, 10:54
Avatar de Sebastian1046  
Fecha de Ingreso: junio-2003
Mensajes: 278
Antigüedad: 14 años, 6 meses
Puntos: 0
el problema

el problema es que no me sale el numero de personas activas.
  #4 (permalink)  
Antiguo 30/06/2003, 11:11
V_G
Invitado
 
Mensajes: n/a
Puntos:
a ver, vamos por partes:
1º -> ¿Has creado el archivo usuarios.txt ?
2º -> ¿Tu servidor admite funciones de lectura y escritura en archivos de texto?
3º -> ¿La ruta del archivo de texto es correcta?

Revisa estos tres puntos.
  #5 (permalink)  
Antiguo 30/06/2003, 11:14
Avatar de Sebastian1046  
Fecha de Ingreso: junio-2003
Mensajes: 278
Antigüedad: 14 años, 6 meses
Puntos: 0
si

todo eso esta bien
  #6 (permalink)  
Antiguo 30/06/2003, 11:16
V_G
Invitado
 
Mensajes: n/a
Puntos:
Pues entonces no sé que puede ser.
Prueba a usar el código fuera del frame...
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 14:03.