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

ASP
用XML数据岛解决用户界面问题 - 1
用XML数据岛解决用户界面问题 - 2
用XML数据岛解决用户界面问题 - 3
关于ASP中堆栈溢出错误的解决
运用asp结合vbscript模拟股票滚屏
如何在VC++ 编写的组件中使用 ADO
VBSctipt 5.0中的新特性
ASP.NET中使用多个runat=server form
ASP.NET中的XML表单控件
页面之间传递元素的办法
转换文本为超联和Email格式的代码
vbscript和javascript互相调用
用VB6创建MTS组件
连接各种数据库的代码的总结
数据排序及如何动态排序
将HTML表单数据存储为XML格式
关于打印页面的一些经验
用vbscript判断email地址的合法性
可以近视替代remote script的代码
利用MSCHART画图的一段代码

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 102 ::
收藏到网摘: 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()&"人"")"%>