topo
topo
topo
Terça, 21 de Maio de 2013.
portaldigidesign
menu principal
No Site Na Web
slogan
 
:: Home
:: Fórum
:: Newsletter
:: Na Mídia
:: Recomende-nos
:: Nossos banners
:: Rss Feeds
:: Contato
 
menu design
:: Flash
:: Dreamweaver
:: Fireworks
:: Swishmax
:: Photoshop
:: Corel Draw
:: Ícones
:: Tabela de cores
:: Layouts prontos
 
menu programação
 
:: PHP
:: Asp/.Net
:: Javascript
:: CGI
:: Cold Fusion
 
menu serviços
 
:: Geradores online
:: Indique o site
:: Usuários online
:: Contador
 
menu sites destaque
 
:: Indique seu site
:: Sites destaque
 
menu artigos
 
:: Web Marketing
:: Web acessibilidade
 
 
 

· Artigos » PHP/MySQL

 

Pessoas online  English Version

Por: Leandro Barral
Publicado em: 12.06.2005
Visualizações: 11091


rec6 Linkto delicious google yahoo live Twiter

Mais uma vez estarei ensinando algo que muitas pessoas estão me pedindo, um script que mostra o número de usuarios ativos no momento em seu Site.
[Let's Work!]'

Primeiramente estaremos criando a tabela:

SQL

CREATE TABLE `usersonline` ( `ip` varchar(255) NOT NULL default '', `tempo` int(12) NOT NULL default '0' ) TYPE=MyISAM;

Agora o código responsável por captar os dados e mostrar o numero de pessoas online:
Obs: O código está todo comentado.

PHP

<?
//Configuração do banco de dados:

$host = "localhost"; //link para o seu mysql
$user = "usuario"; //usuario do bando de dados
$senha = "senha"; //senha do banco de dados
$db = "nome"; //nome do banco de dados

//Fim da configuração

$tempmins = 5; //minutos para deletar um usuario do banco de dados (minutos inativo)

//Código:

@$ip= $REMOTE_ADDR; //pega o IP do visitante

$res = mysql_connect("$host", "$user", "$senha") or die ("Erro de conexão"); //conecta com o DB
mysql_select_db($db,$res); //seleciona o DB

if(mysql_num_rows(mysql_query("SELECT * FROM usersonline WHERE ip='".$ip."'"))>0) { //verifica se o ip ja esta no DB
//ja que ele está é necessario dar um update no time para que ele não seja deletado rapidamente
mysql_query('UPDATE usersonline SET tempo="'.time().'" WHERE ip="'.$ip.'"');
} else {
//se ele não está no DB, então prescisamos inseri-lo
mysql_query('INSERT INTO usersonline (ip,tempo) VALUES ("'.$ip.'","'.time().'")');
}
mysql_query('DELETE FROM usersonline WHERE tempo<'.(time()-($tempmins*60))); //deleta os ips com mais que o tempo estabelecido

echo mysql_num_rows(mysql_query("SELECT * FROM usersonline")).' usuário(s) online'; //Mostra os usuarios online

//Fim do código
?>

Espero que tenham gostado, até a próxima e qualquer sugestão:
leandro.barral.wm@gmail.com



Versão para impressão  Twitter

 

  Comentários:

Nome: Digite seu nome.Digite seu nome.
Email: Campo Obrigatório. Formato Inválido.
Comentário:   Campo Obrigatório.Digite ao menos 8 caracteres.Até 100 caracteres.
   

   rss

 
hospedagem Host Brasil
Dreamweaver
Fireworks
Flash
SwishMax
Corel Draw
Photoshop
Photoshop
PHP
Asp/.Net
Web Marketing
publicidade
   

 

rodape rss Siga-me no Twitter