Ir para conteúdo
Fórum Script Brasil
  • 0

Online.php


mestre fyoda

Pergunta

ele não apresenta erro .

Esta acontecendo que quando entra 2 usuarios , e sai 1 usuario , deveria ficar 1 usuario online , mas mostra 2 usuarios online .

Me ajudem a concertar o meu codigo .

<?
$db_host = "xxx"; // Endereço do servidor mySQL
$db_user = "xxx"; // Seu Login no mySQL
$db_pass = "xxx"; // Sua Senha no mySQL
$db_bdad = "xxx"; // Nome do Banco de Dados

mysql_pconnect($db_host, $db_user, $db_pass) or die (mysql_error());
$timestamp=time();
$timeout=time()-300; // valor em segundos
$result=mysql_db_query($db_bdad, "INSERT INTO useronline VALUES ('$timestamp','$REMOTE_ADDR','$PHP_SELF')");
$result=mysql_db_query($db_bdad, "DELETE FROM useronline WHERE timestamp<$timeout");
$result=mysql_db_query($db_bdad, "SELECT DISTINCT ip FROM useronline") or die(mysql_error());
$usuarios=mysql_num_rows($result);
mysql_close();

if ( $usuarios == 1)
{
echo"Há $usuarios usúario online ";
}
else
{
echo"Há $usuarios usúarios online ";
}
?>

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

Pelo que vi seu codigo ta certo..

Mais pense duas coisas, o php é linguagem server-side então somente se atualizar ira aparecer que so tem 1 usuario !

outra coisa...

voce tem que por para quando o usuario sair deletar o dado da tabela...

isso pode ser feito de duas formas..

do jeito que voce fez (expirar)

ou por js para quando for sair do site abrir uma pop que deleta o dado e fecha sozinha...

Mais do jeito que voce esta fazendo voce tera que esperar 300 segundos o equivalente a 5 minutos para atualizar e aparecer que o usuario foi embora !

é isso

[]´s

Link para o comentário
Compartilhar em outros sites

  • 0

erro :

Key column 'file' doesn't exist in table

<?
$db_host = "xxx"; // Endereço do servidor mySQL
$db_user = "xxx"; // Seu Login no mySQL
$db_pass = "xxx"; // Sua Senha no mySQL
$db_bdad = "xxx"; // Nome do Banco de Dados

mysql_pconnect($db_host, $db_user, $db_pass) or die (mysql_error());
$timestamp=time();
$timeout=time()-300; // valor em segundos
$result=mysql_db_query($db_bdad, "INSERT INTO useronline VALUES ('$timestamp','$REMOTE_ADDR','$PHP_SELF')");
$result=mysql_db_query($db_bdad, "DELETE FROM useronline WHERE timestamp<$timeout");
$result=mysql_db_query($db_bdad, "SELECT DISTINCT ip FROM useronline") or die(mysql_error());
$usuarios=mysql_num_rows($result);
mysql_close();

if ( $usuarios == 1)
{
echo"Há $usuarios usúario online ";
}
else
{
echo"Há $usuarios usúarios online ";
}
?>

Link para o comentário
Compartilhar em outros sites

  • 0
erro :

Key column 'file' doesn't exist in table

<?
$db_host = "xxx"; // Endereço do servidor mySQL
$db_user = "xxx"; // Seu Login no mySQL
$db_pass = "xxx"; // Sua Senha no mySQL
$db_bdad = "xxx"; // Nome do Banco de Dados

mysql_pconnect($db_host, $db_user, $db_pass) or die (mysql_error());
$timestamp=time();
$timeout=time()-300; // valor em segundos
$result=mysql_db_query($db_bdad, "INSERT INTO useronline VALUES ('$timestamp','$REMOTE_ADDR','$PHP_SELF')");
$result=mysql_db_query($db_bdad, "DELETE FROM useronline WHERE timestamp<$timeout");
$result=mysql_db_query($db_bdad, "SELECT DISTINCT ip FROM useronline") or die(mysql_error());
$usuarios=mysql_num_rows($result);
mysql_close();

if ( $usuarios == 1)
{
echo"Há $usuarios usúario online ";
}
else
{
echo"Há $usuarios usúarios online ";
}
?>

a coluna file não existe nesta tabela.

Link para o comentário
Compartilhar em outros sites

  • 0

Do jeito que você fez tá certo!

Se você quizer que os usuários apareça em tempo real em sua página só com java script mesmo, ou então como você está fazendo, que é o metodo utilizado por todos inclusive esse fórum, mais a diferência que o fórum ele pega os usuários dos últimos 15 minutos.

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...