我知道,我就是用的Session 你看清楚我的题目,老兄,,不是问的用什么来做,而是关闭浏览器或则异常退出时应该怎么做。

解决方案 »

  1.   

    关闭浏览器时你可以在<body>里加unload事件,
    <body onunload="javascript:window.open('logout.aspx','','left=1100,top=1100,width=1,height=1');">
    这样你就可以在'logout.aspx'文件中处理了。
    不过这样如果这个页面一刷新也会执行onunload事件;
    不是很理想!
    至于死机或者什么的我也想知道,有没有高手指点一下啊
      

  2.   

    楼上的朋友你的 onunload 方法我也试过,结果的确是 页面一刷新也会执行onunload事件;而且异常退出都没有一点方法。。关注高手
      

  3.   

    就是利用Session会失效的嘛。
    所以你不必一定要显示的退出登陆。
    因为这样不影响你整个系统的安全性。
      

  4.   

    目前除了利用Session过期外没有什么更好的办法:)
      

  5.   

    最好使用数据库,其他的都不怎么好用,
    首先删除过期用户,然后查询是否在线
    delete from Forum_Online where Datediff(minute,Forum_Online_Now,getdate())>10 //十分钟没有反映登陆的时候向数据库添加这个人的信息,
      

  6.   

    我也做过类似你情况的工作,我是这样解决的,在用户关闭窗口时弹出一个页面释放Session,或更改当前用户状态,然后关闭页面.可以做到你说的效果.代码如下:
    function window.onunload()
    {
    if (event.clientX < 0 && event.clientY < 0)//判断是否是刷新页面,如果不是则执行代码
    {
    var w1 = window.parent.opener;
    window.open("sessionclear.aspx","release","height=0,width=0,status=no,toolbar=no,menubar=no,location=no");
    if(w1 && !w1.closed)
    {
    w1.history.go(-1);
    w1.location = "UserLogin.aspx";
    w1.focus();
    }
     
     }
    }