Guest Mc Bolacha Postado Fevereiro 5, 2005 Denunciar Share Postado Fevereiro 5, 2005 Será que alguém sabe com faço para colocar um script em uma página e obter o número de pessoas online sem utilizar banco de dados? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Principe Postado Fevereiro 5, 2005 Denunciar Share Postado Fevereiro 5, 2005 usa um arquivo texto ! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 digo5150 Postado Fevereiro 6, 2005 Denunciar Share Postado Fevereiro 6, 2005 Segue um script que utiliza um arquivo *.txt que nesse caso deve-se chamar online.txt e estar no mesmo diretório do script, caso você queira modificar o nome do arquivo *.txt, modifique a variável em vermelho:<?phpclass UsersOnline{var $StrPatch;var $TimeOut; //Verifica se o ip consta na lista function Verifica($IpNow){ $Arquivo = @file($this->StrPatch); $Reg = count($Arquivo); for($i=0;$i<$Reg;$i++){ list($Ip,,) = explode("|",$Arquivo[$i]); if($Ip!=$IpNow) continue; return $i; } } //Limpa ips com data expirada function Limpar(){ $DataAgora = date("YmdHis"); $Arquivo = @file($this->StrPatch); $Arquivo2 = @fopen($this->StrPatch,"w+"); $Reg = count($Arquivo); for($i=0;$i<$Reg;$i++){ list($Ip,$Data) = explode("|",$Arquivo[$i]); if($Data>$DataAgora){ fwrite($Arquivo2,"$Ip|$Data"); } } fclose($Arquivo2); } //Cadastra o novo ip na lista function Salva(){ $IpAgora = $_SERVER['REMOTE_ADDR']; $DataAgora = (date("YmdHis")+$this->TimeOut); $Arquivo = fopen($this->StrPatch,"a"); fwrite($Arquivo,"$IpAgora|$DataAgora\n"); fclose($Arquivo); } //Atualiza o ip na lista function Update($Linha){ $IpAgora = $_SERVER['REMOTE_ADDR']; $DataAgora = (date("YmdHis")+$this->TimeOut); $Arquivo = @file($this->StrPatch); $Arquivo2 = @fopen($this->StrPatch,"w+"); $Reg = count($Arquivo); for($i=0;$i<$Reg;$i++){ list($Ip,$Data) = explode("|",$Arquivo[$i]); if($i == $Linha) fwrite($Arquivo2,"$IpAgora|$DataAgora\n"); else fwrite($Arquivo2,"$Ip|$Data"); } fclose($Arquivo2); } //Verifica quantos estão online function Online(){ $Arquivo = @file($this->StrPatch); $Reg = count($Arquivo); return $Reg; }}//Inicio$online = new UsersOnline();$online->StrPatch = 'online.txt';$online->TimeOut = 200;$Linha = $online->Verifica($_SERVER['REMOTE_ADDR]);if(is_null($Linha)){ $online->Limpar(); $online->Salva(); $On = $online->Online();}else{ $online->Update($Linha); $online->Limpar(); $On = $online->Online();}echo($On." usuário online!");?>espero que ajude!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Gladisson Postado Fevereiro 6, 2005 Denunciar Share Postado Fevereiro 6, 2005 Eu fiz um tb utilizando arquivo de texto, veja nos script's daqui do fórum. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Guest Mc Bolacha
Será que alguém sabe com faço para colocar um script em uma página e obter o número de pessoas online sem utilizar banco de dados?
Link para o comentário
Compartilhar em outros sites
3 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.