Uma questão muito importante, e algumas vezes trabalhosa, é a de determinar quantas visitas recebeu cada página de um determinado <% 'Recupera o nome da página atual ' Agora vamos ler o nosso arquivo que armazena as contagens e procurar o nome da página atual 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 'Esta variável vai nos indicar se a página já foi visitada alguma vez 'Fazemos um Loop até a última linha do arquivo ReDim preserve nomepag(x) ' Incluímos o nome da primeira página registrado na lista nomepag ' Comparamos para saber se o nome da página já registrada é o mesmo do nome da página atual 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 ' guardamos o número total de acessos dessa página na variável contagem ' Aumentamos em 1 o indexador de nossa lista 'Aqui, como a página já foi visitada, à variável cabaco é atribuida o valor 1 ' Caso o nome da página atual não se encontre registrado ReDim preserve acessos(x) ' Carregamos os valores em nossa lista sem nenhum acréscimo ' Aumentamos em 1 o indexador de nossa lista End If ' Volta ao início e parte para uma nova linha de nosso arquivo ' Fechamos o objeto Set letot = Nothing ' Agora vamos "despejar" os valores de nossa lista em um novo arquivo totais.txt 'Zeramos o indexador de nossa lista ' Fazemos um looping por nossa lista 'Escrevemos o nome da página (nomepag) no arquivo de texto ' Na próxima linha vai o total de acessos dessa página ' Aumentamos em 1 o indexador de nossa lista Next ' Se a página nã foi visitada nenhuma vez... ' Escrevemos o nome da página no final do arquivo texto contagem=1 escrevetot.WriteLine apagina ' Na próxima linha, atribuímos 1 ao valor de visitas feitas a esta página end if ' Fechamos o objeto 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 É isto! Um contador simples e eficiente, uma solução perfeita para um sistema de contagem sem muito trabalho. <!-- #include file="contador-facil.asp" --> Espero que esse código seja útil para todos.
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!
' declarando as variáveis
Dim x, FSObject, letot, escrevetot, numacesso, acessos(), nomepag(), apagina
apagina = Request.ServerVariables("URL")
Set FSObject = CreateObject("Scripting.FileSystemObject")
x=0
cabaco=0
While Not letot.AtEndOfStream
nomepag(x) = letot.ReadLine
If nomepag(x) = apagina Then
acessos(x) = letot.ReadLine + 1
contagem = acessos(x)
x = x + 1
cabaco=1
Else
acessos(x) = letot.ReadLine
x = x + 1
Wend
letot.Close
Set escrevetot = FSObject.CreateTextFile(nomearquivo)
x = 0
For Each numacesso In nomepag
escrevetot.WriteLine nomepag(x)
escrevetot.WriteLine acessos(x)
x = x + 1
if cabaco=0 then
contador=1
escrevetot.WriteLine contador
escrevetot.Close
Response.Write "até o momento, a página "& apagina &" recebeu "& contagem & " visitantes"
%>
Tudo o que você tem que fazer agora é incluir este código em todas as páginas de seu
site, utilizando:
Boa programação!
quarta-feira, 24 de janeiro de 2001
Contador fácil em TXT
Postado por
Rubens Farias
às
10:44
Esta matéria foi postada originalmente no ASP4Developers por Ronaldo Reis, que na época era "Desenvolvedor ASP.NET e analista de sistemas; desenvolve soluções para Internet e é autor de vários artigos em sites do Brasil e do exterior.". Hoje, vai saber...
Assinar:
Postar comentários (Atom)
0 comentários:
Postar um comentário