Usuarios activos en php

Este script en PHP sirve para mostrar cuantas personas estan visualizando la pagina web al mismo tiempo.

active_users.php


<?php

  
// Antes de comenzar es necesario:

  // Crear un archivo de texto con el nombre: active_users.dat

  // Guardarlo en el mismo directorio que active_users.php

  // Despues agregar el siguiente codigo al documento

  // en donde mostraremos el numero de usuarios activos:

  //

  // <script language="javascript" type="text/javascript" src="active_users.php"></script>

  //

  // Usuarios activos | valar(at)unixmexico.org | 08:58 a.m. 05/05/2004 | OpenSource

  $file = 'active_users.dat';

  
$expira = '300';

  
$fd = fopen ($file, "r");

  while (!
feof($fd)) {

    
$buffer = explode('|a|', fgets($fd, 4096));

    if (
trim($buffer[1])+$expira >= time()) {

      
$activos[$buffer[0]] = trim($buffer[1]);

    }

  }

  
fclose ($fd);

  
$nuevos = array ();

  
$nuevos[$REMOTE_ADDR] = time();

  while (list (
$clave, $val) = @each ($activos)) {

    if (!
array_key_exists($clave, $nuevos)) {

      
$nuevos[$clave] = $val;

    }

  }

  while (list (
$clave, $val) = each ($nuevos)) {

    
$n_buffer .= "$clave|a|$val\n";

  }

  
$fd2 = fopen ($file, "w+");

  
fputs($fd2, $n_buffer);

  
fclose($fd2);

  
$gente = count($activos) + 1;

  print
"document.write('$gente');\n";

?>





Por cierto, hoy encontre un tip que me parece bastante bueno; una manera facil de colorear el código fuente de algun script en php para publicarlo (como el de arriba) es incluir la siguiente instrucción en el documento

show_source('archivo_fuente.php');

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s