fantasma Postado Março 29, 2006 Denunciar Share Postado Março 29, 2006 O sistema de pontuação funciona da seguinte forma:- 1 ponto caso o participante acerte o resultado mas erre o placar do jogo;- 3 pontos caso o participante acerte o resultado e o placar;- 0 ponto caso o participante erre o resultado do jogo.set rs = objdb.execute("select * from teste where id_jogo='"& id &"'")a=Request.Form("resultado1")b=Request.Form("resultado2")' "a" = campo do resultado oficial do jogo response.write aresponse.write ("<br>")' "b" = campo do resultado oficial do jogo response.write bresponse.write ("<br>")do while not rs.Eofresponse.write rs("resultado1")response.write ("<br>")response.write rs("resultado2")response.write ("<br>")if int(a)=int(rs("resultado1")) and int(=int(rs("resultado2")) thenExecutar1 = "UPDATE teste SET pontos = '3' where id_jogo='"& id &"'"objDB.Execute(Executar1)elseif int(a)>int( and int(rs("resultado1"))>int(rs("resultado2")) thenExecutar2 = "UPDATE teste SET pontos = '1' where id_jogo='"& id &"'"objDB.Execute(Executar2)elseif int(a)<int( and int(rs("resultado1"))<int(rs("resultado2")) thenExecutar3 = "UPDATE teste SET pontos = '1' where id_jogo='"& id &"'"objDB.Execute(Executar3)elseif int(a)=int( and int(rs("resultado1"))=int(rs("resultado2")) thenExecutar4 = "UPDATE teste SET pontos = '1' where id_jogo='"& id &"'"objDB.Execute(Executar4)elseExecutar5= "UPDATE teste SET pontos = '0' where id_jogo='"& id &"'"objDB.Execute(Executar5)end ifrs.movenextloop******** nâo esta incluindo os valores corretos...........?????????? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 marcos_804 Postado Março 29, 2006 Denunciar Share Postado Março 29, 2006 >> acho que voce não esta fechando a conexao!Cara que não entendi muito o seu codigo, mas acho que voce poderia fazer um sistema de atualizacao mais facil.faz assim oh: SQL = "Puxa a conexao WHERE id=" & id 'Campo que puxa o campo de pontos rs("pontos") = numero da atualizacao 'Aqui atualiza rs.Update 'Aqui fecha a conexao rs.Close Cara eu estou te dando esta dica por que há algum tempo eu tive este problema de não atualizacao. e eu testei este e logo deu certo.Se não funcionar acho que valeu a intencao! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fantasma Postado Março 29, 2006 Autor Denunciar Share Postado Março 29, 2006 Não entendi vo pode explicar mehlor Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 marcos_804 Postado Março 29, 2006 Denunciar Share Postado Março 29, 2006 Cara o que eu vi é que você dá um monte de "execute" mas não fecha a conexao... dai se ela ficar aberta não vai atualizar...faca desta forma que eu falei para vc SQL = "Puxa a conexao WHERE id=" & id rs("pontos") = numero da atualizacao rs.Update rs.Close Este tipo é mais facil de ser feita e da para fechar facilmente...rs Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fantasma Postado Março 29, 2006 Autor Denunciar Share Postado Março 29, 2006 Error Type:ADODB.Recordset (0x800A0CB3)Object or provider is not capable of performing requested operation./copa/alterar.asp, line 59set rs = objdb.execute("select * from teste where id_jogo='"& id &"'")a=Request.Form("resultado1")b=Request.Form("resultado2")do while not rs.Eofif int(a)=int(rs("resultado1")) and int(=int(rs("resultado2")) thenSQL = "UPDATE teste SET WHERE id_jogo=" & id 'Campo que puxa o campo de pontosrs("pontos") = 3 'Aqui atualizars.Update 'Aqui fecha a conexaors.Closeend ifrs.movenextloopesta dando este erro Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fantasma Postado Março 29, 2006 Autor Denunciar Share Postado Março 29, 2006 alguém pode ajudar Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fantasma Postado Março 30, 2006 Autor Denunciar Share Postado Março 30, 2006 alguém pode dar uma luzzzzzzzzzzzzz Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Março 30, 2006 Denunciar Share Postado Março 30, 2006 id_jogo é texto no BD? não sei se o código é todo esse porque não achei o request do ID Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fantasma Postado Março 30, 2006 Autor Denunciar Share Postado Março 30, 2006 eu mudei alguma coisa no codigo e coloquei tudo em uma tabelaid_cod =textocod é esteset rs = objdb.execute("select * from teste where id_jogo='"& request.form("id") &"'")do until rs.Eofif rs("res_pl1")=rs("resultado1") and rs("res_pl2")=rs("resultado2") thenExecutar = "UPDATE teste SET pontos = '3' where id_jogo='"& request.form("id") &"'"objDB.Execute(Executar)elseif rs("res_pl1")>rs("resultado1") and rs("res_pl2") >rs("resultado2") thenExecutar = "UPDATE teste SET pontos = '1' where id_jogo='"& request.form("id") &"'"objDB.Execute(Executar)ELSEif int(rs("res_pl1"))<int(rs("res_pl2")) and int(rs("resultado1"))<int(rs("resultado2")) thenExecutar = "UPDATE teste SET pontos = '1' where id_jogo='"& request.form("id") &"'"objDB.Execute(Executar)ELSEif int(rs("res_pl1"))=int(rs("res_pl2")) and int(rs("resultado1"))=int(rs("resultado2")) thenExecutar = "UPDATE teste SET pontos = '1' where id_jogo='"& request.form("id") &"'"objDB.Execute(Executar)elseExecutar5 = "UPDATE teste SET pontos = '0' where id_jogo='"& request.form("id") &"'"objDB.Execute(Executar5)end ifrs.movenextloopnão esta fazendo a comparação exata, sempre cai no else Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 marcos_804 Postado Março 30, 2006 Denunciar Share Postado Março 30, 2006 não meu caro você não deve fazer issoSQL = "UPDATE teste SET WHERE id_jogo=" & id mas sim isso: SQL = "[b]SELECT * FROM[/b] teste WHERE id_jogo=" & id sera que agora funciona?rs? tenta ai.... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 colerus Postado Março 31, 2006 Denunciar Share Postado Março 31, 2006 só um detalhe... se "pontos" for do tipo numero, retire a " ' ".assim:"UPDATE teste SET pontos = 3 where id_jogo='"& id &"'"e não assim:"UPDATE teste SET pontos = '3' where id_jogo='"& id &"'" Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fantasma Postado Março 31, 2006 Autor Denunciar Share Postado Março 31, 2006 beleza ta atualizando, mas qunando eu tenho dois id de jogo ele insere os pontos nos dois registro,e o caso é o seguinte pode ter varios registros com o mesmo id assim o programa tem que verificar um a um.......aguem ajuda Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fantasma Postado Março 31, 2006 Autor Denunciar Share Postado Março 31, 2006 Obrigado a todos acabei de resolver o problema Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
fantasma
O sistema de pontuação funciona da seguinte forma:
- 1 ponto caso o participante acerte o resultado mas erre o placar do jogo;
- 3 pontos caso o participante acerte o resultado e o placar;
- 0 ponto caso o participante erre o resultado do jogo.
set rs = objdb.execute("select * from teste where id_jogo='"& id &"'")
a=Request.Form("resultado1")
b=Request.Form("resultado2")
' "a" = campo do resultado oficial do jogo
response.write a
response.write ("<br>")
' "b" = campo do resultado oficial do jogo
response.write b
response.write ("<br>")
do while not rs.Eof
response.write rs("resultado1")
response.write ("<br>")
response.write rs("resultado2")
response.write ("<br>")
if int(a)=int(rs("resultado1")) and int(=int(rs("resultado2")) then
Executar1 = "UPDATE teste SET pontos = '3' where id_jogo='"& id &"'"
objDB.Execute(Executar1)
elseif int(a)>int( and int(rs("resultado1"))>int(rs("resultado2")) then
Executar2 = "UPDATE teste SET pontos = '1' where id_jogo='"& id &"'"
objDB.Execute(Executar2)
elseif int(a)<int( and int(rs("resultado1"))<int(rs("resultado2")) then
Executar3 = "UPDATE teste SET pontos = '1' where id_jogo='"& id &"'"
objDB.Execute(Executar3)
elseif int(a)=int( and int(rs("resultado1"))=int(rs("resultado2")) then
Executar4 = "UPDATE teste SET pontos = '1' where id_jogo='"& id &"'"
objDB.Execute(Executar4)
else
Executar5= "UPDATE teste SET pontos = '0' where id_jogo='"& id &"'"
objDB.Execute(Executar5)
end if
rs.movenext
loop
******** nâo esta incluindo os valores corretos...........??????????
Link para o comentário
Compartilhar em outros sites
12 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.