USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Dicas

  ASP - Active Server Page    (Miscelâneas)

Título da Dica:  Contador Simples em TXT
Postada em 27/10/2003 por ^HEAVY-METAL^            
Uma questão muito importante, e algumas vezes trabalhosa, é a de determinar quantas visitas recebeu cada página de um determinado site.
Em geral, a solução para que as coisas realmente funcionem do modo como queremos envolve banco de dados, consultas, e muito código . Por isso, resolvi contribuir com um código que possiblite o contagem de acessos não de apenas uma, mas de todas as páginas de um site; e o que é melhor, sem banco de dados!

(Cores: ASP comentários )


arquivo : contador-facil.asp

<%
' declarando as variáveis
Dim x, FSObject, letot, escrevetot, numacesso, acessos(), nomepag(), apagina

'Recupera o nome da página atual
apagina = Request.ServerVariables("URL")

' Agora vamos ler o nosso arquivo que armazena as contagens e procurar o nome da página atual
Set FSObject = CreateObject("Scripting.FileSystemObject")

nomearquivo=server.mappath("totais.txt")

Set letot = FSObject.OpenTextFile(nomearquivo,1,1)

' Observe que o número 1 em vermelho indica que o arquivo totais.txt será criado caso ainda não exista!

' O arquivo é lido, linha a linha, o nome da página atual é procurado, e os valores já lidos são armazenados em duas variáveis: nomepag e numacesso

'Aqui, zeramos o indexador de nossa lista
x=0

'Esta variável vai nos indicar se a página já foi visitada alguma vez
cabaco=0

'Fazemos um Loop até a última linha do arquivo
While Not letot.AtEndOfStream

ReDim preserve nomepag(x)

' Incluímos o nome da primeira página registrado na lista nomepag
nomepag(x) = letot.ReadLine

' Comparamos para saber se o nome da página já registrada é o mesmo do nome da página atual
If nomepag(x) = apagina Then

ReDim preserve acessos(x)

' Se for a mesma página, adicionamos 1 ao número de visitas registradas, e incluímos o valor na lista numacesso
acessos(x) = letot.ReadLine + 1

' guardamos o número total de acessos dessa página na variável contagem
contagem = acessos(x)

' Aumentamos em 1 o indexador de nossa lista
x = x + 1

'Aqui, como a página já foi visitada, à variável cabaco é atribuida o valor 1
cabaco=1

' Caso o nome da página atual não se encontre registrado
Else

ReDim preserve acessos(x)

' Carregamos os valores em nossa lista sem nenhum acréscimo
acessos(x) = letot.ReadLine

' Aumentamos em 1 o indexador de nossa lista
x = x + 1

End If

' Volta ao início e parte para uma nova linha de nosso arquivo
Wend

' Fechamos o objeto
letot.Close

Set letot = Nothing

' Agora vamos "despejar" os valores de nossa lista em um novo arquivo totais.txt
Set escrevetot = FSObject.CreateTextFile(nomearquivo)

'Zeramos o indexador de nossa lista
x = 0

' Fazemos um looping por nossa lista
For Each numacesso In nomepag

'Escrevemos o nome da página (nomepag) no arquivo de texto
escrevetot.WriteLine nomepag(x)

' Na próxima linha vai o total de acessos dessa página
escrevetot.WriteLine acessos(x)

' Aumentamos em 1 o indexador de nossa lista
x = x + 1

Next

' Se a página nã foi visitada nenhuma vez...
if cabaco=0 then

' Escrevemos o nome da página no final do arquivo texto
contador=1

contagem=1

escrevetot.WriteLine apagina

' Na próxima linha, atribuímos 1 ao valor de visitas feitas a esta página
escrevetot.WriteLine contador

end if

' Fechamos o objeto
escrevetot.Close

Set escrevetot = Nothing

Set FSObject = Nothing

' Aqui, um pequeno código opcional, caso você queira exibir o número de visitas em sua página
Response.Write "até o momento, a página "& apagina &" recebeu "& contagem & " visitantes"
%>

Um contador simples e eficiente, uma solução perfeita para um sistema de contagem sem muito trabalho.
Tudo o que você tem que fazer agora é incluir este código em todas as páginas de seu site, utilizando:

<!-- #include file="contador-facil.asp" -->


T+,
 


CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página