Inicio arrow Trucos y tutoriales arrow Tutoriales PHP y APACHE arrow ¿Cómo sé los usuarios activos que hay en mi web?
¿Cómo sé los usuarios activos que hay en mi web? PDF Imprimir E-Mail

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

Código 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:

Código 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.

Comentarios
Añadir nuevoBuscar
¡Sólo los usuarios registrados pueden escribir comentarios!

Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved.

 
< Anterior   Siguiente >
 
 

Encuesta

¿ Que opinas de nuestro nuevo diseño Web ?
 

Estan en Linea

Hay 6 invitados en línea