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

Contador De Visualização


py2tz

Pergunta

Ele esta contando, mas acrescenta +1 em todos os registros, teria que ser individualmente para cada ID clicada, ou seja faz a contagem para cada registro do BD independente, esse abaixo atualiza a coluna cliques de todos os registros.

alguém pode indicar a alteração?

<%

SET Con = Server.CreateObject("ADODB.Connection")

Con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("arvore.mdb")

set conta_visitas = Con.execute("SELECT * FROM prlist")

IF NOT Session("on") = TRUE THEN

Con.Execute("UPDATE prlist SET cliques='"& conta_visitas("cliques")+1 &"'")

Session("on") = TRUE

Session.TimeOut = 10

END IF

Response.Write " "& conta_visitas("cliques")

%>

Obrigado

Fausto

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Você não precisa fazer um SELECT para depois fazer um UPDATE.

Pode fazer assim direto ó:

<%
SET Con = Server.CreateObject("ADODB.Connection")
Con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("arvore.mdb") 

IF NOT Session("on") = TRUE THEN
Con.Execute("UPDATE prlist SET cliques= cliques +1 WHERE id = "&id&"")
'ACIMA, A VARIÁVEL ID DEVE TER O NUMERO DA ID QUE DEVE SER ATUALIZADO O NÚMERO DE CLIQUES
Session("on") = TRUE
Session.TimeOut = 10
END IF

set conta_visitas = Con.Execute("SELECT * FROM prlist WHERE id = "&id&"")

Response.Write " "&conta_visitas("cliques")
%>

Na linha comentada, tem a variável ID.

Ali vai ser a ID alterada.

Esse valor você deve passar por um FORM, ou QUERYSTRING, você vê a melhor forma.

Link para o comentário
Compartilhar em outros sites

  • 0

Então beleza, tentei, mas não tá contando,

O codigo que você alterou fica dentro de uma arquivo chamado cont_reg.asp e dentro da pagina que carrega os dados do registro já pre escolhido onde possui os dados da pessoa existe um include que carrega esse script.

Visualizo os cliques da coluna cliques, porem não conta, esta em numero 3 e não sai disso.

Ficou assim:

<%

SET Con = Server.CreateObject("ADODB.Connection")

Con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("arvore.mdb")

id = request.querystring("id")

IF NOT Session("on") = TRUE THEN

Con.Execute("UPDATE prlist SET cliques= cliques +1 WHERE id = "&id&"")

Session("on") = TRUE

Session.TimeOut = 10

END IF

%>

Link para o comentário
Compartilhar em outros sites

  • 0

Começou a contar desse jeito:

<%

SET Con = Server.CreateObject("ADODB.Connection")

Con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("arvore.mdb")

id = request.querystring("id")

'IF NOT Session("on") = TRUE THEN

Con.Execute("UPDATE prlist SET cliques = cliques +1 WHERE id = "&id&"")

'Session("on") = TRUE

'Session.TimeOut = 10

'END IF

%>

Sendo que o que esta em vermelho parece que bloqueia a contagem, pergunta de leigo:

O timeout=10 quer dizer o que? 10 minutos de uma visita a outra?

PS: Note que as linhas em vermelhho estao desabilitadas.

Link para o comentário
Compartilhar em outros sites

  • 0

Eu acho que esse tal de ON é para que o usuario ao recarregar a pagina não conte os cliques, então determinamos um valor, ou seja somente apos 10 minutos é que irá contar o click, fica mais real.

Vou liberar ele e fazer uns testes.

Sobre o valor armazenado, eu mostro ele na pagina dos links onde o usuario escolhe qual registro quer ver, fica em outro setor. Mas sem o IF ficou redondinho, chego a conclusão que terminamos a duvida. pra quem quizer ficou assim:

Sem o tempo:

<%

SET Con = Server.CreateObject("ADODB.Connection")

Con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("arvore.mdb")

id = request.querystring("id")

Con.Execute("UPDATE prlist SET cliques = cliques +1 WHERE id = "&id&"")

%>

e com o tempo (acho)

<%

SET Con = Server.CreateObject("ADODB.Connection")

Con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("arvore.mdb")

id = request.querystring("id")

IF NOT Session("on") = TRUE THEN

Con.Execute("UPDATE prlist SET cliques = cliques +1 WHERE id = "&id&"")

Session("on") = TRUE

Session.TimeOut = 10

END IF

%>

Obrigado companheiro pela força.

Quer ver como ficou lá na pagina?

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

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