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

Alguém Conserta Este Script Pra Mim? É Coisa Pouca


::..Hunter..::

Pergunta

Vou tentar explicar antes o que ele faz:

São 2 scripts, 1 mostra quantos usuários estão on-line (está funcionando) e o que eu fiz mostra que dia, hora e quantos usuários estavam on-line no dia mais agitado (esse está dando erro, não está gravando os dados no banco de dados).

<?

//--------------------- este está funcionando --------------------------------------

/* Definir o tempo máximo que uma sessão pode ficar inativa */

define("MAX_IDLE_TIME", 3);

function getOnlineUsers(){

if ( $directory_handle = opendir( session_save_path() ) ) {

$conta = 0;

while ( false !== ( $file = readdir( $directory_handle ) ) ) {

if($file != '.' && $file != '..') {

if ( time() - fileatime(session_save_path() . '/' . $file) < MAX_IDLE_TIME * 60 ) {

$conta++;

}

}

}

closedir($directory_handle);

return $conta;

} else {

return false;

}

}

echo '&nbsp;:: ' . getOnlineUsers() . ' usuário(s) online<br>';

echo "<hr color=#cccccc size=1>";

//--------------------Fim do Script Certo---------------------------

//-------------Início do script que está dando erro------------------------

$agora = getOnlineUsers();

include("conect.php");

conectar();

$db = mysql_select_db("meubancodedados");

$sql = "SELECT * FROM online";

$resultado = mysql_query($sql)

or die ("Não foi possível realizar a consulta ao banco de dados");

$linha=mysql_fetch_array($resultado)

or die ("total não encontrado");

$novototal = $linha["total"];

$data = date("y-m-d");

$hora = date("H:i:s");

if ($novototal<=$agora) {

$sql = "UPDATE online SET data = $data, hora = $hora, total = $agora WHERE total != 0";

$sql = mysql_query($sql) or die ("Houve erro na gravação dos dados, por favor, clique em voltar e verifique os campos obrigatórios!");

}

$sql = "SELECT * FROM online";

$resultado = mysql_query($sql)

or die ("Não foi possível realizar a consulta ao banco de dados");

$tot = $linha["total"];

$dat = $linha["data"];

$hor = $linha["hora"];

$novadata = substr($dat,8,2) . "/" .substr($dat,5,2) . "/" . substr($dat,2,2);

$novahora = substr($hor,0,2) . "h" .substr($hor,3,2) . "min";

echo "Nosso dia mais agitado foi $novadata, às $novahora, com <b>$tot</b> usuário(s) on-line";

//---------------Fim do Script com erro--------------------------

?>

Se eu chamo a consulta dos campos ele exibe normalmente, mas quando tento dar update ele não grava os dados novos.

A estrutura no Mysql está assim:

Campo Tipo Nulo Padrão

total int(3) Não 0

data date Não 0000-00-00

hora time Não 00:00:00

Será que alguma boa alma poderia corrigir e mostrar o erro pra mim?

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...