情况是这样的,我建立了一个在线统计的表<online>,每次有登录的时候会写入这个表,当前的用户名和登录时间。退出的时候自动删除这项记录。后台有一项来管理在线用户的用户   登录时间            操作
123    182.16.12.10        踢线(功能是,删除此用户登录时插入的在线记录)前台用户那里会判断在线这项记录存不存在,不存在的话,就会退出到登录页面,但是这样要前台用户那里有操作,或者刷新才会退出。要怎么样才到达到后台踢线后,前台用户立即退出呢?

解决方案 »

  1.   

    服务器删除session
    js ajax 获取session 不存在则销毁登录.
      

  2.   


    你是要读数据库数据吧 那就js ajax 去轮询吧... 具体的php 就一般的读取数据库数据的做法 最好是作内存表 不过呢考虑机房会不会断电的问题...
      

  3.   

    “要怎么样才到达到后台踢线后,前台用户立即退出呢?”首先要知道退出是什么效果,前台用户退出,一定是在进行了某个操作之后,势必是加载了一些新内容,用户才知道自己退出了,不可能像C/S结构,S端一踢,C端就关闭了。所以我觉得LZ的做法没有必要,只在用户进行了某项操作之后,再提示其已被踢掉。
    或者就如1L所说,在服务端对session做操作。不过原理其实是一样的,只不过用户的操作由ajax完成了
      

  4.   

    onload的时候出发ajax,添加数据
    unload的时候出发ajax,删除数据