当前位置: 首页 > 图文教程 > 网络编程 > ASP > 无刷新随时取得用户当前活动信息

ASP
isNull(str), isEmpty(str)和 str = 的区别
使用ADO批量更新记录(源代码)
自己动手,结合javascript和dhtml做一个ubb编辑器
检查Email地址的比较完善的正则表达式函数
从Access数据库恢复BMP图像并显示在WEB页面(microsoft)
ASP环境下邮件列表功能的实现 (四)(推荐)
在ASP应用中如何限制同一表单被多次提交!!!!好东西
了解MSMQ,控制ASP进程 (一)
了解MSMQ,控制ASP进程 (二)
ASP技术在论坛中的运用(一)(吐血推荐!!!!)
ASP技术在论坛中的运用(二)(吐血推荐!!!!)
ASP技术在论坛中的运用(三)(吐血推荐!!!!)
ASP技术在论坛中的运用(四)(吐血推荐!!!!)
ASP技术在论坛中的运用(五)(吐血推荐!!!!)
ASP技术在论坛中的运用(六)(吐血推荐!!!!)
ASP技术在论坛中的运用(七)(吐血推荐!!!!)
ASP技术在论坛中的运用(八)(吐血推荐!!!!)
不用数据源打开数据库(DSNless connection)
大部分的ADO的错误码对应的含义
好东西,翻页程序,大家可以参考

ASP 中的 无刷新随时取得用户当前活动信息


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

 

最终显示是这样的:

用户:billy 权限:管理员 时间[2004年1月21日 20:54:08] 停留[0小时0分钟] 空闲[0分钟12秒]

显示的BOTTOM.HTM文件

<SCRIPT language=JavaScript>
<!--
function bar()
{

    var oXMLDoc = new ActiveXObject('MSXML');             //创建'MSXML'对象

    sURL = "loginxml.asp"      //获取登陆状态数据的地址

    oXMLDoc.url = sURL;     //load数据

    var oRoot=oXMLDoc.root;     //获取返回xml数据的根节点
    if(oRoot.children != null) 

    {    

                    
              //根据返回的数据在客户端显示

              user.innerHTML=oRoot.children.item(0).text;       //用户

              myclock.innerHTML=oRoot.children.item(1).text;       //时间

              stay.innerHTML=oRoot.children.item(2).text;    //停留

              free.innerHTML=oRoot.children.item(3).text;    //空闲

              qx.innerHTML=oRoot.children.item(4).text; //权限
             

    }
       if (oRoot.children.item(5).text>1800)  //空闲时间超过30分钟则自动转到退出登陆页面
         window.parent.location="/user/logoff.asp?id=1";


              timeoutid = setTimeout("bar()",1000)      //没1秒取得一次数据,}
//-->
</SCRIPT>

用户:<font color="#FF0000"><span id=user></span></font> 权限:<font color="#FF0000"><span id=qx></span></font>  时间[<span id=myclock></span>] 停留[<span id=stay></span>] 空闲[<span id=free></span>]


提供XML数据的ASP页面 LOGINXML.ASP

<%
username=session("userName")
qxdm=session("qxdm")
set rs = server.createobject("adodb.recordset")
    rs.source = "select * from userlogin  where username='"&username&"'"
    rs.open rs.source,conn,1,1
    logindate=rs("logindate")
    active=rs("active")
    rs.close
    stay=DateDIff("s",logindate,now())
    off=DateDIff("s",active,now())
    stay=stay/60
    stay=Int(stay/60)&"小时"&Int(stay mod 60)&"分钟"
    free=Int(off/60)&"分钟"&Int(off mod 60)&"秒"
    us=DatePart("yyyy",date)&"年"&DatePart("m",date)&"月"&DatePart("d",date)&"日 "&time
%>
<?xml version="1.0" encoding="gb2312" ?>

<plan>

       <user><%=username%></user>

       <date><%=us%></date>

       <active><%=stay%></active>

       <free><%=free%></free>
      
       <qx><%call qx(qxdm)%></qx>
    &nbs