::..Hunter..:: Postado Janeiro 9, 2004 Denunciar Share Postado Janeiro 9, 2004 $agora = usuariosonline();$novototal = $linha["total"];$data = date("y-m-d");$hora = date("H:i:s");if ($novototal<=$agora) {$sql = "UPDATE online SET total = $agora,data = $data,hora = $hora"; $sql = mysql_query($sql) or die ("Houve erro na gravação dos dados!");}Se faço apenas update do campo total ele funciona, mas quando coloco pra atualizar a data e hora dá "Houve erro na gravação dos dados!"Acho que tem algum erro de sintaxe no UPDATE, será? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 edgar2000br Postado Janeiro 9, 2004 Denunciar Share Postado Janeiro 9, 2004 coloca o script inteiro para facilitar. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ::..Hunter..:: Postado Janeiro 9, 2004 Autor Denunciar Share Postado Janeiro 9, 2004 Tudo bem, aí vai:$agora = getOnlineUsers();include("conect.php");conectar();$db = mysql_select_db("meubanco");$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 total = $agora,data = $data,hora = $hora"; $sql = mysql_query($sql) or die ("Houve erro na gravação dos dados!");}$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";Onde estou usando o código Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 edgar2000br Postado Janeiro 9, 2004 Denunciar Share Postado Janeiro 9, 2004 cara primeiro:- onde voce define a funcao getOnlineUsers() ???- no update tente fazer assim: $sql = "UPDATE online SET total='$agora', data='$data', hora='$hora'"; Se a funcao getOnlineUsers() q esta dentro da variavel $agora não funcionar vai dar pau no update mesmo.tenta ver isso ae e me fala o q deu. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ::..Hunter..:: Postado Janeiro 9, 2004 Autor Denunciar Share Postado Janeiro 9, 2004 cara primeiro:- onde voce define a funcao getOnlineUsers() ???- no update tente fazer assim: $sql = "UPDATE online SET total='$agora', data='$data', hora='$hora'"; Se a funcao getOnlineUsers() q esta dentro da variavel $agora não funcionar vai dar pau no update mesmo.tenta ver isso ae e me fala o q deu. A função getOnlineUsers() funciona, tanto é que se eu fizer update só do campo "total" que recebe o valor desta função ele atualiza sem problema.O problema é que quando coloco a data e hora junto no update ele não atualiza e dá o erro.Tem problema de colocar no update aspas duplas e aspa simples junto?e a vírgula entre os campos, é junta ou separada? Ex: total='$agora',data='$data'As variáveis vão com aspas ou sem aspas na linha do update?O que estou fazendo de errado? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ::..Hunter..:: Postado Janeiro 13, 2004 Autor Denunciar Share Postado Janeiro 13, 2004 Alguém quer me dizer o que está errado, please? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 M@luco Belez@ Postado Janeiro 13, 2004 Denunciar Share Postado Janeiro 13, 2004 tenta dar um mysql_error() pra ver o q ele diz, assim:...$sql = "UPDATE online SET total = $agora,data = $data,hora = $hora"; $sql = mysql_query($sql) or die ("Houve erro na gravação dos dados!Pau no sql:".mysql_error());}....vê q erro ele retorna e posta ai denovo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 edgar2000br Postado Janeiro 13, 2004 Denunciar Share Postado Janeiro 13, 2004 Tenta assim: $agora = getOnlineUsers(); include("conect.php"); conectar(); $db = mysql_select_db("meubanco"); $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 total = '$agora', data = '$data', hora = '$hora'"; $sql = mysql_query($sql) or die ("Houve erro na gravação dos dados!"); } $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"; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ::..Hunter..:: Postado Janeiro 16, 2004 Autor Denunciar Share Postado Janeiro 16, 2004 Ok edgar2000br, era problema de sintaxe mesmo.Coloquei as variáveis entre aspas e funcionou.Obrigado a todos que me ajudaram a resolver mais 1 problema. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 edgar2000br Postado Janeiro 16, 2004 Denunciar Share Postado Janeiro 16, 2004 Ok edgar2000br, era problema de sintaxe mesmo.Coloquei as variáveis entre aspas e funcionou.Obrigado a todos que me ajudaram a resolver mais 1 problema. Precisando estamo ae! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
::..Hunter..::
$agora = usuariosonline();
$novototal = $linha["total"];
$data = date("y-m-d");
$hora = date("H:i:s");
if ($novototal<=$agora) {
$sql = "UPDATE online SET total = $agora,data = $data,hora = $hora";
$sql = mysql_query($sql) or die ("Houve erro na gravação dos dados!");
}
Se faço apenas update do campo total ele funciona, mas quando coloco pra atualizar a data e hora dá "Houve erro na gravação dos dados!"
Acho que tem algum erro de sintaxe no UPDATE, será?
Link para o comentário
Compartilhar em outros sites
9 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.