sei que o ESerra já postou aqui um sistema desses, mas esse aqui (por usar AJAX) dá pra atualizar quase que em tempo real quem sai e quem entra em determinado site. Aqui eu utilizei o sistema usando como referência uma session (fiz assim pra testar no mesmo computador), mas dá pra facilmente mudar pra usar com IP (o que é mais eficiente, mas não dá pra testar na mesma máquina).
ajax.js
function set_xmlhttp() {
try {
xmlhttp = new XMLHttpRequest();
} catch (e) {
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
xmlhttp = false;
}
}
}
}
isso aqui é a função de criar o objeto pro ajax funcionar
index.html
o script acima não é segredo nenhum pra quem sabe o básico de AJAX: ele simplesmente abre o arquivo engine.php a cada 5 segundos e joga o resultado na DIV "usr". agora vamos ver o engine.php
engine.php
<?php
$con = mysql_connect('localhost', 'usuario', 'senha');
mysql_select_db('usuariosonline');
session_start();
//checa se eu já tenho um registro
if (!$_SESSION['id']) {
//cria um registro se eu não tenho
mysql_query('insert into online values (null, "'.time().'")');
$_SESSION['id'] = mysql_insert_id();
} else {
//confirmar minha presença
mysql_query('update online set unix="'.time().'" where id="'.$_SESSION['id'].'"');
}
//apagar inativos
mysql_query('delete from online where unix < '.(time() - 30)); //aqui coloquei 30 segundos para o timeout
//retornar quantos estão online
$qr_on = mysql_query('select * from online');
echo mysql_num_rows($qr_on);
mysql_free_result($qr_on);
mysql_close($con);
?>
e agora a tabela:
usuariosonline.online
create table online (
id int(25) auto_increment,
unix int(25) not null,
primary key(id));
Pergunta
George
sei que o ESerra já postou aqui um sistema desses, mas esse aqui (por usar AJAX) dá pra atualizar quase que em tempo real quem sai e quem entra em determinado site. Aqui eu utilizei o sistema usando como referência uma session (fiz assim pra testar no mesmo computador), mas dá pra facilmente mudar pra usar com IP (o que é mais eficiente, mas não dá pra testar na mesma máquina).
ajax.js
isso aqui é a função de criar o objeto pro ajax funcionar index.html o script acima não é segredo nenhum pra quem sabe o básico de AJAX: ele simplesmente abre o arquivo engine.php a cada 5 segundos e joga o resultado na DIV "usr". agora vamos ver o engine.php engine.php e agora a tabela: usuariosonline.onlinee pronto!
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.