WOW QUE ROX, CARA PARABENS!
- Fórum
- OTServ
- Tutoriais
- Tutoriais de Websites
- Usuários Online
info
Grupo: Visconde
Registrado: 16/09/06
Posts: 464
Reputação: 0
Gênero: Masculino
Char no Tibia: Yonlu

info
Grupo: Artesão
Registrado: 01/01/06
Posts: 139
Reputação: +18
Char no Tibia: Sua Irmã!

Gostei muito deste script tambem, pena que eu to parando de meche com isso =]
té +
info
Grupo: Campones
Registrado: 03/04/08
Posts: 2
Reputação: 0

Otimo script, parabens...
soh que tem muita gente perguntando:
ondem eu crio o aruqivo de MySql?
onde ponho os php?
devo criar?
como devo adcionar?...
essa pessoa sou eu, e muitos de mim se perguntam tbm
sohq ue sou diferente, tive coragem de postar!
obrigado, esperando um post melhorardo!
Editado Abril 20 por valtinho2004
cala boca cara, se nao sabe vai atras, para de reclama em todos os postes q voce ve.
ficar ai jogando, sem nada pra fazer é massa, agora vai atras e saiba como criar uma tabela, como introduzir um php.
------
cara seu php ta dahora,.. criei um site pro pra um server de tibia, e estou utilizando alguns dos scripts colocados no Xtibia. até agora 1 ou 2 teve problema, o resto esta otimo, só com alguns ajustes...
parabens



info
Grupo: Visconde
Registrado: 10/06/06
Posts: 338
Reputação: +6
Char no Tibia: Setyte Berseker
Criando um sistema de usuários online com cadastro de record
Como funciona?
* Teremos uma tabela no banco de dados com os campos ip, tempo.
Se o ip do usuario não estiver cadastrado nesta tabela é adicionado um novo registro a tabela. o tempo será atribuido pela função time(), que retorna o timestamp Unix atual. Mais tarde faremos uma verificação desse timestamp aonde os mais novos permanecem os outros serão deletados...
* Teremos outra tabela para o recorde.
1º Passo: Mysql
2º Passo: O código PHP
conexao.php
usuarios.php
<?include "conexao.php"; // Abre o arquivo "conexao.php" para conectar ao mysql. // Definindo váriaveis.$timestamp = time(); // Define o timestamp.$data = date("Y-m-d"); // Data no formato aa-mm-dd.$ip = $_SERVER['REMOTE_ADDR']; // O ip do usuario.// Criando comandos SQL.$onlineSql = "SELECT * FROM online WHERE ip = '".$ip."'; // Comando SQL para selecionar todos os campos da tabela 'online', aonde o campo ip seja igual ao ip do usuario.$recordeSql = "SELECT * FROM recorde"; // Comando SQL para selecionar todos os campos da tabela 'recorde'.$agoraSql = "SELECT * FROM online"; // Comando SQL para selecionar todos os campos da tabela 'online'.// Criando querys MySQL.$onlineSql = mysql_query($onlineSql) or die(mysql_error()); // Executa o comando SQL $online, se falhar exibe o erro.$recordeSql = mysql_query($recordeSql) or die(mysql_error()); // Executa o comando SQL $recorde, se falhar exibe o erro.// Agora verificaremos se o ip já está cadastrado, para cadastrar ou atualizar o banco.if(mysql_num_rows($onlineSql) > 0){ // Se o número de registros encontrados na query $online for maior que 0...mysql_query("UPDATE online SET tempo = '".$timestamp."'"); // Atualizamos o tempo do usuario no mysql.}else{ // Caso contrário.mysql_query("INSERT INTO online (ip, tempo) VALUES ('".$ip."','".$tempo."')"); // Adiciona a tabela um registro com o ip e o timestamp atual.} // Finalizamos a condição.// Eliminando usuarios da tabela.mysql_query("DELETE FROM online WHERE tempo < '".$timestamp-500."'") or die(mysql_error()); // Deleta da tabela online os registros que o timestamp seja menor que o atual menos 500, não podemos ter uma precisão se o usuario está online, mas ele não atualizou a pagina nos ultimos 500 segundos, então provavelmente não está mais nela.// Agora verificaremos o recorde atual.$recorde = mysql_fetch_array($recordeSql); // $recorde é a array para os resultados de $recorde.$recorde = $recorde['numero']; // $recorde é o valor maximo do recorde.// Verificando o número de usuarios online no momento.$agoraSql = mysql_query($agoraSql) or die(mysql_error()); // Executa o comando SQL $total_agora, se falhar exibe o erro.$agora = mysql_num_rows($agoraSql); // Exibe o número de registros de usuarios online agora.// Camparando o recorde com o numero atual.if($recorde < $agora){ // Se o recorde for menor que o número atual de usuarios online.mysql_query("UPDATE TABLE recorde SET data = '".$data."', numero = '".$agora."'") or die(mysql_error()); // Atualizamos o recorde para o numero atual.} // Fechamos a condição porque caso seja maior não será alterado nada.// Imprimindo número de usuarios online agora.echo "No momento estão online ".$agora." usuarios.";?>Agora para incluir em sua página, use o seguinte código
Espero ter ajudado.
Editado Outubro 6 por Nostradamus