当前位置: 首页 > 图文教程 > 网络编程 > ASP > 轻松打造ASP计数器

ASP
asp中如何限制重复提交同一表单
asp不用DSN访问数据库
ASP文件上传原理分析及实现实例
在ASP程序中访问Access数据库
datagrid编辑、修改、删除、翻页例子
用好ASP.NET 2.0的URL映射
ASP.NET中Datagrid常见错误
ASP.NET 2.0数据缓存功能简介
ASP.NET2.0的缓存控件和地址映射
ASP.NET 2.0中的DataSource系列控件
ASP.NET 2.0中的登陆控件简介
asp存储过程使用
在Asp中使用存储过程
ASP判断文件地址是否有效
ASP+SMTP完成邮件群发功能
用Asp隐藏文件路径实现防盗链
一个通用的保护ASP系统的方法
编写安全的ASP代码
ASP的错误处理集锦
ASP ActiveX 组件

轻松打造ASP计数器


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 157 ::
收藏到网摘: n/a

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