⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 online.asp

📁 仿雅虎论坛静态生成html版 后台管理:admin/admin.asp 用户名:admin 密码:admin TOP/top.htm 顶部模板 left.htm 左边树形菜单模板
💻 ASP
字号:
<!--#include file="const.asp"-->
<%
  Dim artime,userwz,LoginUser,idtitle,logintime,onlinenum1,onlinenum2,onlinenum3,onlinenum4,Online1,Online2,i,j
  artime=20   '设定不在线的时间,单位分钟
 '清除在规定时间内不活动的在线数据
  If Len(Application(BBSname&"Online"))>0 then
    Online1=Split(Application(BBSname&"Online"),"#")
    Application.Lock
    Application(BBSname&"Online")=""
    For i=0 to UBound(Online1)
      Online2=Split(Online1(i),"|")
      If datediff("n",Online2(5),now())<artime then 
         if len(Application(BBSname&"Online"))>0 then Application(BBSname&"Online")=Application(BBSname&"Online")+"#"+Online1(i) else Application(BBSname&"Online")=Online1(i) end if
      end if
    Next
    Application.UnLock
  End if
 '接收用户所在的论坛位置
  userwz=Request.QueryString("userwz")
 '下面程序,处理内存中在线情况
  if Request.ServerVariables("HTTP_X_FORWARDED_FOR")="" then ipdress=Request.ServerVariables("REMOTE_ADDR") else ipdress=Request.ServerVariables("HTTP_X_FORWARDED_FOR") end if
  LoginUser=Request.Cookies("LoginUser")
 if LoginUser="" then '没有在线
    Application.Lock
    Application(BBSname&"LoginUserNum")=Application(BBSname&"LoginUserNum")+1
    Application.UnLock
    idtitle=cstr(Application(BBSname&"LoginUserNum"))+"-"+Request.ServerVariables("REMOTE_ADDR")
    Response.Cookies("LoginUser")=idtitle
    Application.Lock
    if len(Application(BBSname&"Online"))>0 then Application(BBSname&"Online")=Application(BBSname&"Online")+"#"+idtitle+"|客人"+"|N"+"|"+userwz+"|"+ipdress+"|"+cstr(now())+"|"+cstr(now()) else Application(BBSname&"Online")=idtitle+"|客人"+"|N"+"|"+userwz+"|"+ipdress+"|"+cstr(now())+"|"+cstr(now()) end if
    Application.UnLock
 else
    Online1=Split(Application(BBSname&"Online"),"#")
    j=-1
    for i=0 to UBound(Online1)
      Online2=Split(Online1(i),"|")
      if Online2(0)=Loginuser then j=i end if
    Next
    Application.Lock
    if j=-1 then '已经在线但没有找到这个用户
      if Request.Cookies("login")="Y" then
        if len(Application(BBSname&"Online"))>0 then Application(BBSname&"Online")=Application(BBSname&"Online")+"#"+Loginuser+"|"+Request.Cookies("Username")+"|Y"+"|"+userwz+"|"+ipdress+"|"+cstr(now())+"|"+cstr(now()) else Application(BBSname&"Online")=Loginuser+"|"+Request.Cookies("Username")+"|Y"+"|"+userwz+"|"+ipdress+"|"+cstr(now())+"|"+cstr(now()) end if
      else
        if len(Application(BBSname&"Online"))>0 then Application(BBSname&"Online")=Application(BBSname&"Online")+"#"+Loginuser+"|客人"+"|N"+"|"+userwz+"|"+ipdress+"|"+cstr(now())+"|"+cstr(now()) else Application(BBSname&"Online")=Loginuser+"|客人"+"|N"+"|"+userwz+"|"+ipdress+"|"+cstr(now())+"|"+cstr(now()) end if
      end if
    else                      '已经找到在线的这个用户
      Online2=Split(Online1(j),"|")
      logintime=Online2(6)
      if Request.Cookies("Login")="Y" then 
        Application(BBSname&"Online") = replace(Application(BBSname&"Online"), Online1(j), Loginuser+"|"+Request.Cookies("Username")+"|Y"+"|"+userwz+"|"+ipdress+"|"+cstr(now())+"|"+logintime)
      else
        Application(BBSname&"Online") = replace(Application(BBSname&"Online"), Online1(j), Loginuser+"|客人"+"|N"+"|"+userwz+"|"+ipdress+"|"+cstr(now())+"|"+logintime)
      end if
    end if
    Application.UnLock
 end if
 if Request.QueryString("dis")<>"NO" then
 '下面的程序计算在线情况
   Onlinenum1=0:Onlinenum2=0:Onlinenum3=0:Onlinenum4=0
   Online1=Split(Application(BBSname&"Online"),"#")
  For i=0 to UBound(Online1)
     Online2=Split(Online1(i),"|")
     Onlinenum1=Onlinenum1+1
     If Online2(2)="Y" then Onlinenum2=Onlinenum2+1 end if
     If Online2(3)=userwz then Onlinenum3=Onlinenum3+1 end if
     If Online2(2)="Y" and Online2(3)=userwz then Onlinenum4=Onlinenum4+1 end if
  Next
     onlinenum="[总在线"+cstr(onlinenum1)+"人&nbsp;注册用户"+cstr(onlinenum2)+"人]&nbsp;&nbsp;当前["&userwz&"]位置"+cstr(onlinenum3)+"人&nbsp;注册用户"+cstr(onlinenum4)+"人"
     onlinenum="document.write(""" & onlinenum & """);"
     response.write onlinenum 
 end if%>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -