En esta ocasión no usaremos
ninguna BD, usaremos un archivo llamado usuarios.dat

Entonces, vamos a crear nuestro script PHP y lo llamamos activos.php

<?php

$tiempo_logout = 600; // segundos tras los cuales un usuario es marcado como inactivo

$arr = file("usuarios.dat");
$contenido = $REMOTE_ADDR.":".time()." ";

for ( $i = 0 ; $i < sizeof($arr) ; $i++ )
{
$tmp = explode(":",$arr[$i]);
if (( $tmp[0] != $REMOTE_ADDR ) && (( time() - $tmp[1] ) < $tiempo_logout ))
{
$contenido .= $REMOTE_ADDR.":".time()." ";
}
}

$fp = fopen("usuarios.dat","w");
fputs($fp,$contenido);
fclose($fp);

$array = file("usuarios.dat");

$USUARIOS_ACTIVOS = count($array);
?>

Bueno, explicamos
paso a paso lo que hace el script:

  • Lo primero es sacamos el usuarios.dat a un array
  • Creamos el archivo de
    texto con las IP y la hora de visita de los que visitan nuestra web
  • “Borramos” de ese archivo los que llevan más de $tiempo_logout
    sin actividad
  • Escribimos el fichero
  • Declaramos una variable $USUARIOS_ACTIVOS que contiene el número de usuarios activos del momento
  • Jeje….así de sencillo 😉
  • La forma de utilizar el Script, es muy sencilla, al principio
    de cualquier página de tu web, pones <?php
    include(“activos.php”) ?>
    y donde quieras mostrar el número
    de usuarios, usas la variable $USUARIOS_ACTIVOS.

Documento redactado por Ferdy apoyado en el código original de Eric
para Maestros del Web