PHP: Sistema de usuários online

Muita pessoas já me perguntaram, “Como eu faço um sisteminha de usuários online?” ou então “Aonde eu encontro um sistema de usuário online?”.
Ai eu resolvi postar aqui o sistema!

<? // faz a conexao com o banco de dados $host = "localhost"; $user = "usuario"; $pass = "senha"; $db = "banco_de_dados"; $connection = @mysql_connect($host, $user, $pass) or die("Unable to connect to database!"); @mysql_select_db($db, $connection) or die("Unable to select database!"); ////////////////////// $ts = time(); $to = time()-60; $sql = @mysql_query("SELECT count(*) FROM usuarios_online WHERE ip="'$REMOTE_ADDR'""); $sqlt = @mysql_result($sql,0,0); if ($sqlt) @mysql_query("UPDATE usuarios_online SET timestamp="'$ts',local='$PHP_SELF',nick='$admin_nick'" WHERE ip="'$REMOTE_ADDR'""); else @mysql_query("INSERT INTO usuarios_online (timestamp,ip,local,nick) VALUES ('$ts','$REMOTE_ADDR','$PHP_SELF','$admin_nick')"); $sql = @mysql_query("DELETE FROM usuarios_online WHERE timestamp<$to"); $sql = @mysql_query("SELECT ip FROM usuarios_online"); $UOL = @mysql_num_rows($sql); $UOLS = ($UOL <= 1) ? "" : "s"; # ja esta com a verificacao pra coloca 's' se for maior que 1 usuario online echo "$UOL usuário${UOLS} online"; ?> 

Agora salve o código abaixo como tabela.sql e rode-o no seu banco de dados.

CREATE TABLE `usuarios_online` ( `timestamp` int(20) NOT NULL default '0', `ip` varchar(25) NOT NULL default '', `local` varchar(70) default NULL, `nick` varchar(30) NOT NULL default '' ) TYPE="MyISAM;" 

Dicas incríveis para carreira de TI

Essas dicas, serão importantíssimas para você que já está na área e principalmente para quem está ingressando agora na área de TI e está se sentindo um pouco perdido em meio a tantos assuntos, tecnologias e cursos.

Leia mais »