将on_line用来保存最后访问时间。
在做用户判断的代码中:
1、修改相应用户的on_line为当前时间
2、修改所有 当前时间 - on_line > 20分钟 记录的on_line为0
3、统计on_line > 0 的记录,就是在线人数

解决方案 »

  1.   

    同意楼上的观点。的就是应该吧 on_line为0的删除,减小表体积。
      

  2.   

    同意楼上的楼上。
    第二:关于关闭窗口的问题,我只是有这么个想法。
    在页面终有个隐含的iframe (可以是宽:0,高:0),当你关闭窗口的时候在你的主页面中调用outload()函数,利用javascript 向隐含的iframe 页面传递参数,然后在iframe 中的页面中写代码,把此人的在线删掉!
      

  3.   

    我刚才说错了,是调用onunload不是ouload,就是<body onunload="aa()">写一段javascript 的aa()向iframe 中传递参数。
    另外你说的,如果我第一次进入页面、刷新页面……的时候就把当前的时间射定为最后访问时间,例子:当我进入论坛,什么事都没干,那么他刚进论坛的时候就是最后访问时间,如果我刷新了一边,那我刷新的时间就是最后访问时间,如果我写贴子,那我发表贴子的时间是最后时间。很容易懂!