当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP实例:即时显示当前页面浏览人数

ASP
ASP中用Join和Array,可以加快字符连接速度。
采用ODBC接口访问MySQL指南
最大限度优化你的Asp性能
实现让每句话的头一个字母都大写
如何尽快释放掉Connection对象建立的连接?
把数据插入到数据库的两种方法
Connection对象的应用
查看ASP Session 变量的小工具
用XMLHTTP组件正确解析图片地址并将其保存
利用XMLHTTP 从其他页面获取数据
Request与Request.Form的速度测试
用SOAP和ASP进行服务器端更新
ASP开发网页时需要牢记的注意事项列表
面向对象的ASP技术:思考与实践
提供一种“间接防止另存为”的方法
格式化数字函数FormatNumber
怎么样写一段高效,安全的sql查询代码
关于Adodb.Stream的使用说明
不用EOF以加快记录循环
防止重复提交的巧妙方法

ASP实例:即时显示当前页面浏览人数


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

online.asp文件

以下为引用的内容:
<!--#include file="dbconn.asp" -->
<%
onlineTimeout=10       ''定义在线活动时间的时间间隔
Function Userip()
    GetClientIP = Request.ServerVariables("HTTP_X_FORWARDED_FOR")             ''''''''''''''''''''''获得用户的虚拟IP地址
    If GetClientIP = "" or isnull(GetClientIP) or isempty(GetClientIP) Then
        GetClientIP = Request.ServerVariables("REMOTE_ADDR")                   ''''''''''如果未使用代理服务器,就获得来源的IP地址
    End If
    Userip = GetClientIP
End Function
sql="select o_id from c_online where o_ip='' "&Userip()&" '' "           在数据库中查找所获得 的IP地址的id
Set rs=conn.execute(sql)
If rs.eof and rs.bof Then
       sql="insert into c_online(o_ip) values('' "&Userip()&" '')"         如果数据库中没有就表明是新IP,那么插入操作
       conn.execute(sql)
Else
       sql="update c_online set o_ltime=now() where o_ip='' "&Userip()&" '' "        更数据库的当前时间
       conn.execute(sql)
End If
sql="delete from c_online where dateadd(''s'',"&onlineTimeout*60&",o_ltime) < now()"        定义十分钟刷新
conn.execute(sql)
rs.close
Set rs=nothing
Function allonline()
       tmprs=conn.execute("Select count(o_id) from c_online")
       allonline=tmprs(0)
       set tmprs=nothing
end Function
%>
<%Response.Write "document.write(""在线"&allonline()&"人"")"%>