Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Célio-Ctba

Contador de acessos com erro

Recommended Posts

Inserir string no contador, ao invés de somar + 1, colocar letras?

não, acho que o que ele quiz dizer é armazenar numero em string e toda vez qeu for pegar tem que converter pra numero pra poder somar e depois inserir como texto denovo...Particularmente deixaria o campo como numero e faria o UPDATE diretamente, sem consulta previa...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas é assim que está, veja o cód.:

 

ASP [/tr][tr]Dim Conn, RsQuery, Pagina, Counter, cliques

Pagina = Request.ServerVariables("SCRIPT_NAME")

Set Conn = Server.Createobject("ADODB.Connection")

Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("contador.mdb")

If Len(Session(Pagina)) = 0 Then

Counter = RsQuery("acesso")+1

Conn.Execute("UPDATE acesso SET acesso = "&Counter&" WHERE url = '"&pagina&"'") '**********AQUI É Q TÁ F... *********

Session(Pagina) = "visitada"

Else

Set RsQuery = Conn.Execute("SELECT * FROM acesso WHERE url = '" & Pagina & "'")

Counter = RsQuery("acesso")

End If

Conn.Close

Set Conn = Nothing

Response.Write Counter

[/tr]

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara não sei qual é o erro mas não precisa selecionar o valor pra fazer o UPDATE, faz direto..."UPDATE acesso SET acesso = acesso + 1 WHERE url = '" & Pagina & "'"vê se resolve

mas olha como imaginei fazer...não usa aquel counter, mesmo porque ele estará vazio

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, já tinha feito isso q você falou mas daí o erro muda para:Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)[Microsoft][Driver ODBC para Microsoft Access] Parâmetros insuficientes. Eram esperados 1./teste/contador.asp, line 53Que NHACA, um cód tão fácil é q sou mto burro!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

e foi exatamente nesta hora que pedi pra você escrever istoresponse.write("UPDATE acesso SET acesso = acesso + 1 WHERE url = '" & Pagina & "'")pra tentar ver qual é o erro...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah, tá, agora me traz a seguinte informação:Nº de visitantes: UPDATE acesso SET acesso = acesso + 1 WHERE url = '/teste/inicial.asp'

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah, tá, agora me traz a seguinte informação:Nº de visitantes: UPDATE acesso SET acesso = acesso + 1 WHERE url = '/teste/inicial.asp'

bem cara se o campo acesso é numerico e se a url mostrada existe, o update deve estar funcionando, pois está tudo certo...

Compartilhar este post


Link para o post
Compartilhar em outros sites

<%Dim Conn, RsQuery, Pagina, CounterPagina = Request.ServerVariables("SCRIPT_NAME")Set Conn = Server.Createobject("ADODB.Connection")Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("contador.mdb")If Len(Session(Pagina)) = 0 Then    Set RsQuery = Conn.Execute("SELECT * FROM acesso WHERE url = '" & Pagina & "'"")    counter = 1    if not rsQuery.Eof then       Counter = RsQuery("acesso")+1    end if    Set RsQuery = Conn.Execute("UPDATE acesso SET acesso = " & Counter & " WHERE url = '" & Pagina & "'")    Session(Pagina) = "visitada"Else    Set RsQuery = Conn.Execute("SELECT * FROM acesso WHERE url = '" & Pagina & "'")    Counter = RsQuery("acesso")End IfConn.CloseSet Conn = NothingResponse.Write Counter%>

se nao resolver, muda o nome da tabela para acessos, com s no final e muda na sql... pode ser que seja isso, mas acredito que nao...

e o campo tem que ser numerico... ok?

 

PS: Faltou um where no select do contador :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

mass fabricio se o campo for numerico não precisa selecionar nada antes do update...Vai funcionar vai, mas não precisa

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.