PHP:¿Como puedo ver los usuarios en linea con un .txt?
De Foros del Web
Para usarlo solo tienes que incluir el archivo donde quieras ver los usuarios actuales require('usuarios.php'); y tener un .txt con el nombre usuarios.txt o bien puedes colocarle otro nombre en $usuarios=new Activos("aqui nombre.txt");Texto en cursiva
$usuarios=new Activos("usuarios.txt");
<?php class Activos { //creado por acoevil private $nombre; private $modo; private $ip; private $inactivo=300; private $hora; private $activos=0; function Activos($nombre) { $this->nombre=$nombre; $this->modo="r"; $this->ip=$_SERVER['REMOTE_ADDR']; $this->hora=$tiempo=date("h:i:s"); ################################ $apuntador=$this->abrir(); $usuarios=$this->leer($apuntador); $this->escribimos($usuarios); echo "Usuarios en linea: ".$this->activos; } function abrir() { $apuntador=fopen($this->nombre,$this->modo); return $apuntador; } function leer($apuntador) { while(!feof($apuntador)) { $linea=fgets($apuntador); list($ip,$tiempo_t)=split(" ",$linea); if($ip==$this->ip) { $mi_ip=$this->ip." ".$this->hora; $this->activos++; } else { if(strtotime($this->hora)>strtotime($tiempo_t)){ $diferencia=strtotime($this->hora)-strtotime($tiempo_t); }else{ $diferencia=strtotime($tiempo_t)-strtotime($this->hora); } if($diferencia<$this->inactivo) { $tx=$tx.$ip." ".$tiempo_t."\n"; $this->activos++; } } } if($mi_ip=="") { $mi_ip=$this->ip." ".$this->hora; $this->activos++; } fclose($apuntador); return $introduce=$tx.$mi_ip; } function escribimos($usuarios) { $fp=fopen($this->nombre,"w"); fwrite($fp,$usuarios); fclose($fp); } } $usuarios=new Activos("usuarios.txt"); ?>
-- acoevil 4 Mayo 2009
Este artículo es parte de las FAQs de PHP y el Manual de PHP.
- Indice de las FAQs: Conceptos, Configuración, Formularios, Manejo de Archivos, Integración con Bases de Datos, Sesiones, Extensiones y Librerías, Seguridad, Funciones, Clases y Objetos, Frameworks
- Recomendamos también: Guía Zend, Frameworks PHP, Aceleradores PHP
- Agregar al FAQ: PHP: Instrucciones para agregar una pregunta al FAQ de PHP
- Para preguntas sobre PHP: Foro de Php
