- 以下介绍用数据库实现简单计数器
- '下面存为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 日期型
复制代码
|