以下介绍用数据库实现简单计数器
下面存为count.asp
<%
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="& server.mappath("count.mdb")
%>
<%on error resume next%>
<%sql="update count set hit=hit+1%><%conn.execute(sql)%>
<%sql = "select * from count
set rs=conn.execute(sql)
%>
<%
更新每周每日数据
lasthit=rs("lasthit")
tdate=year(now()) & "-" & month(now()) & "-" & day(now())
if trim(lasthit)=trim(tdate) then
sql="update site set dayhit=dayhit+1 where id="&request("id")
conn.execute(sql)
response.write "success"
else
sql="update site set dayhit=1 where id="&request("id")
conn.execute(sql)
response.write "error"
end if
sql="update site set lasthit="&tdate&" where id="&request("id")
conn.execute(sql)
p_year=cint(year(now()))-cint(year(lasthit))
p_month=cint(month(now()))-cint(month(lasthit))
p_day=cint(day(now()))-cint(day(lasthit))
period_time=((p_year*12+p_month)*30+p_day)
if cint(period_time)=<cint(7) then
sql="update site set weekhit=weekhit+1 where id="&request("id")
conn.execute(sql)
else
sql="update site set weekhit=1 where id="&request("id")
conn.execute(sql)
end if
%>
document.write(<tr><td width="100%">今日访问<%=rs("dayhit")%>次,本周访问<%=rs("weekhit")%>次,总访问<%=rs("hit")%>次</td></tr>);
<%rs.close
set rs=nothing%>
用<script language="javascript1.1" src="count.asp"></script>在要统计的页面调用即可.
建立数据库:建一个count的mdb库,再建一个表count,表中字段为
hit 数字型
dayhit 数字型
weekhit 数字型
lasthit 日期型