Usuários Online
Antes de você fazer qualquer programa não importando a linguagem, é necessário você ter uma noção básica do funcionamento do seu script, por exemplo, quero fazer um form mail, opa, já sei que preciso receber as informações de um formulário e mandar com a função mail().
Agora, quanto aos Usuários Online a lógica é que o programa verifique na hora os IPs dos usuários no site e que os IPs antigos sejam deletados, após esse processo só falta contar o numero de Usuários Online...
Vamos usar o DB com a tabela chamada usersonline, ela vai ter as colunas: ip,time. A coluna ip gravará o IP do visitante para que ele não se repita, a coluna time determinará a hora em que o visitante deu seu ultimo clique para podermos deleta-lo no caso dele passar cerca de 5 minutos inativo.
Tabela MySQL
Vamos criar nossa tabela com o seguinte código:
Agora vamos criar o arquivo que vai retornar os dados:
Depois faça as alteraçõe que jugar necessárias.
att,
kikoweb.com
Agora, quanto aos Usuários Online a lógica é que o programa verifique na hora os IPs dos usuários no site e que os IPs antigos sejam deletados, após esse processo só falta contar o numero de Usuários Online...
Vamos usar o DB com a tabela chamada usersonline, ela vai ter as colunas: ip,time. A coluna ip gravará o IP do visitante para que ele não se repita, a coluna time determinará a hora em que o visitante deu seu ultimo clique para podermos deleta-lo no caso dele passar cerca de 5 minutos inativo.
Tabela MySQL
Vamos criar nossa tabela com o seguinte código:
CREATE TABLE usersonline ( ip VARCHAR(255) NOT NULL, TIME INT(12) NOT NULL );
Agora vamos criar o arquivo que vai retornar os dados:
<?php //Config: $local ="localhost"; $user ="root"; //Usuário do DataBase $senha=""; //Senha do DataBase $db =""; //DataBase $tempmins = 5; //minutos para inatividade de um usuário //Código: $ip = $REMOTE_ADDR; //pega o IP do visitante $res = mysql_connect("$local", "$user", "$senha") or die ("Erro de conexão"); mysql_select_db($db,$res); //seleciona o DB //verifica se o ip ja esta no DB if (mysql_num_rows(mysql_query("SELECT * FROM usersonline WHERE ip='".$ip."'"))>0) { //ja que ele está é necessario dar um update no time para que ele não seja deletado rapdamente mysql_query('UPDATE usersonline SET time="'.time().'" WHERE ip="'.$ip.'"'); } else { //ele não está no DB, então prescisamos inseri-lo mysql_query('INSERT INTO usersonline (ip,time) VALUES ("'.$ip.'","'.time().'")'); } //deleta os ips com mais de 5 minutos mysql_query('DELETE FROM usersonline WHERE time<'.(time()-($tempmins*60))); //Mostra na pagina os usuarios online echo mysql_num_rows(mysql_query("SELECT * FROM usersonline")).' usuários online'; ?>
Depois faça as alteraçõe que jugar necessárias.
att,
kikoweb.com