可以模拟一下UDP的探询包~~但是是从客户端向服务器端的~~也就是每一段时间内自动提交定量的数据给服务器端~~你甚至可以将这个form和发言的form合成一个~~~比如10分钟内用户没有发言,就视为掉线~~当然10分钟内用户真正掉线了~~他是不可能发言的~~所以很多聊天室都可以过几分钟就看见一些“某某某用户10分钟前已经离开了”要实现完全及时的~~我还没有什么办法~~

解决方案 »

  1.   

    其实还是要刷新的,上面所说的UDP是基于socket的,现在网上的服务器大多不支持socket,除非你自己有主机……
    算了,别用PHP做聊天室,太吃力
      

  2.   

    yuezw
    那么怎么知道其是否没有响应了?是不是还得由别的用户来调用程序扫描?
      

  3.   


    每个客户端都定时发一条信息到服务器,不管有没有发言,例如1分钟,当然这条信息很短,不会过多占用服务器资源。然后取用户列表的时候,只取最后访问时间不超过规定时间多少的用户,例如1.5分钟。然后定时删除多余的信息。如果还有什么不明白,可以到http://www.ruted.com/forum来问我:)