为了账号安全,请及时绑定邮箱和手机立即绑定

php判断用户是否在线的方法

php判断用户是否在线的方法

PHP
qq_翱翔_6 2017-01-15 12:29:57
php怎样判断用户是否在线呢,那位大神知道吗
查看完整描述

4 回答

已采纳
?
qq_GoldThree_0

TA贡献1条经验 获得超1个赞

不是很懂这个在线指的什么,如果是网站的话,则是通过session或cookie 来判断用户是否登陆。

查看完整回答
1 反对 回复 2017-01-17
  • qq_翱翔_6
    qq_翱翔_6
    就是会员登录之后,显示他在线,
  • qq_GoldThree_0
    qq_GoldThree_0
    用户首次登陆时,会在服务器端生成一个session,并返还给客户端一个session Id。但是session 有存活时间,可以设置,默认为24分钟。在每个页面的代码中,通过超全局变量$_SESSION是否能接受到用户信息来判断session是否还存活,则可判断用户是否登陆。建议题主去看看session 的用法就能明白了。
  • qq_翱翔_6
    qq_翱翔_6
    嗯,多谢了
?
大写的王

TA贡献122条经验 获得超162个赞

存一个时间戳字段到 db 中,一旦用户有新的操作,类似刷新页面,跳转到其他页面的时候,就更新这个字段。
判断用户是否在线的话,只需要查询这个字段,然后比较当前时间戳,可以设定一个值,例如5分钟,如果差值小于5分钟,则判断用户在线,否则则判断用户离线。

题主可以这样来理解,当用户请求页面后,后端响应并把页面发送过去,之后用户和服务器之间是没有一个所谓的连接状态的,所以最方便的方法就是当用户做出一些活动时主动向后端发送消息,就相当于告诉服务器,"hello, Im still alive"。但是实际上,你很难百分百做到获取用户的真实动作,例如浏览器意外关闭,网络故障等等。

查看完整回答
3 反对 回复 2017-01-17
?
仙士可

TA贡献170条经验 获得超132个赞

用户登录之后,是需要用session存取会员id的,如果判断的话,那就是直接判断session的会员id存不存在.存在则为登录,

查看完整回答
1 反对 回复 2017-01-15
  • qq_翱翔_6
    qq_翱翔_6
    不知道怎样才能获取别人是否登录,就类似于在线聊天这样
?
qq_项目朱晓进_0

TA贡献2条经验 获得超1个赞

登录后把用户信息session存起来,判断session是否存在就行

查看完整回答
1 反对 回复 2017-01-15
  • qq_翱翔_6
    qq_翱翔_6
    就是有几个会员登录,登录自己的账号之后显示其它会员在线
  • 4 回答
  • 1 关注
  • 5124 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信