1、counter1.asp
<!--#include file="conn.asp"-->
<%
set rs=server.CreateObject("Adodb.recordset")
rs.open "Select *from story where id=1",cn,1,2
if session("counter")<>1 then
rs("hit")=rs("hit")+1
rs.update
session("counter")=1
end if
hit=rs("hit")
%>
该网页被访问<%=hit%>次,另做一个文件abandon.asp,刷新这个这个文件,那么counter.asp这个文件计数.
abandon.asp
<%
session("counter")=2
%>
2、
counter2.asp
<%
count=server.mappath("count.txt")
set con=server.createobject("scripting.filesystemobject")
set out=con.opentextfile(count,1,false,false)
counter=out.readline
out.close
if session("in")<> 1 then
session("in")=1
set out =con.createtextfile(count,true,false)
application.lock
counter=counter+1
out.writeline(counter)
application.unlock
out.close
end if
response.write ""&counter&""
%>
3、counter3.asp
<!--#include file="conn.asp"-->
<%
set rs=server.CreateObject("Adodb.recordset")
rs.open "Select *from story where id=1",cn,1,2
if session("counter")<>1 then
rs("hit")=rs("hit")+1
rs.update
session("counter")=1
end if
hit=rs("hit")
%>
该网页被访问<%=hit%>次
<%
set rs=server.CreateObject("Adodb.recordset")
rs.open "Select *from story where id=1",cn,1,2
varnum=request.Cookies("varnum")
if varnum="" then
rs("hit")=rs("hit")+1
rs.update
varnum=1
end if
hit=rs("hit")
response.write "你是第"&hit&"次访问该网页!"
response.cookies("varnum")=varnum
response.cookies("varnum").expires=#2008-4-10#
%>
'不防刷新
<%
varnum=request.Cookies("varnum")
if varnum="" then
varnum=1
else
varnum=varnum+1
end if
response.write "你是第"&varnum&"次访问该网页!"
response.cookies("varnum")=varnum
response.cookies("varnum").expires=#2008-4-10#
%>
这只是针对一个文件,如果后面跟有参数,如.asp?id=**
则首先判断设为cookies或session的变量是否等于request("id"),接着赋值为request("id")
例如:cookies
varnum=request.Cookies("varnum")
if varnum<>request("id") then
rs("hit")=rs("hit")+1
varnum=request("id")
end if
如果参数不同,那么上次访问的再访问又会计数,以下更完美
varnum=request.Cookies("varnum"&request("id"))
if varnum<>request("id") then
rs("hit")=rs("hit")+1
varnum=request("id")
end if
设置Cookies生命
response.Cookies("varnum"&request("id")).expires=DateAdd("s",1800,now()) ,半小时后失效.