作家
登录

ASP制作在线人数统计实例

作者: 来源:www.28hudong.com 2013-03-30 09:05:15 阅读 我要评论

我们先新建一个ACCESS数据库 内容为 表名:zai 字段为 1.ip 2.time 建立一个文件为index.asp 然后就如下程序! <% '===================================================================================================''******************** 冰翎在线人数统计程序 V2.0 ******************************'' 本站程序由 『冰翎工作室』--冰淇淋剑客 独立制作!请尊重本人的劳动成果'   ' 『冰翎工作室』─━╃→用实力打造个性 ' '* 作者:冰淇淋剑客  '* 网站:http://www.blbcn.com   '* 电子邮件:bingqilinjianke@163.com   '* QQ:68156987 '* 住址:江苏无锡 '******************************************************************************'' 版权所有·抄袭挪用必究''=================================================================================================== '---------定义变量dim rsdim ipdim timeoutdim xdim conndim dbpath'---------定义变量结束 '---------建议数据库链接set conn=server.createobject("adodb.connection")DBPath = Server.MapPath("zai.mdb")conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DBPath'---------建立数据库链接完成 '---------新建数据库RS对象set rs = server.createobject("adodb.recordset")'---------建立数据库RS对象完成 '---------读取客户端IP地址ip = Request.ServerVariables("HTTP_X_FORWARDED_FOR") '若是对方使用的是代理服务器上网的话,用Request.ServerVariables("HTTP_X_FORWARDED_FOR")可以得到对方的真实IP,若对方不是通过代理服务器上网的话,则IP的值为空If ip = "" Then ip = Request.ServerVariables("REMOTE_ADDR") '如果IP的值为空,则得到他的本地客户端地址'---------IP读取完毕 '---------读出数据库内近20分钟所加入的新内容数,group by ip-表IP值相同的记作1sql="select ip from zai where time >= dateadd('n',-20,now()) group by ip"rs.Open sql,conn,1,1zai=rs.RecordCountrs.Close'---------得到在线人数值 '---------查看数据库中是否已经有相同的值,没有则 x="yes"有则x="no" sql="select ip from zai where ip='" & ip & "'"rs.Open sql,conn,1,1if rs.eof and rs.bof then x="yes"elsex="no"end if rs.close'--------判断完毕 '--------如果数据库中没有相同的值则加入一个新值if x="yes" then'   如果没有这个IP则增加一条记录sql="select top 1 * from zai"rs.Open sql,conn,1,3rs.AddNewrs("ip")=iprs("time")=now()rs.updaters.close else   '如果有这个IP则把时间改为现在的时间 sql="select * from zai where ip='" & ip & "'"rs.Open sql,conn,1,3rs("time")=now()rs.updaters.close end if'--------判断加入完毕 '--------删除20分钟以前所加入的值timeout = dateadd("n", -20, now())sql="delete * from zai where time < #" & timeout & "#"conn.Execute sql'--------删除完毕 '--------关闭数据对象set rs=nothingconn.Close set conn=nothing%>document.write("共<%=zai%>人在线") OK! 完成了!

  推荐阅读

  asp实现无限级分类的方法js版

MenuArr=new Array()MenuLenArr=new Array()SubMenuArr=new Array()MenuIdArr=new Array()MenuArr[1]="<%call top11%>" //洲名|||...MenuArr[2]="<%call top1%>" //洲名###国名|||...MenuIdArr[1]="zhou"MenuIdArr>>>详细阅读


本文标题:ASP制作在线人数统计实例

地址:http://www.17bianji.com/kaifa2/ASP/33251.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)