这个用到了在线用户表:login 有sessionid:存会话ID userid:存会员ID
我需要这样的是:
1一个用户进了,他就往login写了一条记录,当然这时他还没登陆所以userid=0 为游客,但他登陆时,就把userid=改成该会员ID,并把登陆信息保存(session或cookie)
问题:如何判断他是第一进来,而把记录写入表login呢:用session_start事件吗?
2.如上面问题解决就看下面如何退出登陆:
I:点网页退出按钮,正常退出,删除login表记录,清除session或cookie.
II:问题:非正常退出,关闭浏览器,在线超时 ,那因该怎么删除掉login表里的内容呢。想半天没想明白啊,
我需要这样的是:
1一个用户进了,他就往login写了一条记录,当然这时他还没登陆所以userid=0 为游客,但他登陆时,就把userid=改成该会员ID,并把登陆信息保存(session或cookie)
问题:如何判断他是第一进来,而把记录写入表login呢:用session_start事件吗?
2.如上面问题解决就看下面如何退出登陆:
I:点网页退出按钮,正常退出,删除login表记录,清除session或cookie.
II:问题:非正常退出,关闭浏览器,在线超时 ,那因该怎么删除掉login表里的内容呢。想半天没想明白啊,
当用户请求时,判断最后一次访问时间与当前请求时间的间隔是否小于你设定的超时时间,
若是,即不是第一次请求再次登录时(比如因为超时Session没有),所有状态重置
当用户请求时,判断最后一次访问时间与当前请求时间的间隔是否小于你设定的超时时间,
若是,即不是第一次请求
但是有些游客第一次进来无任何状态信息,因该怎么办,第一次因该写个什么事件来触发插入用户信息到表login里面呢。
2.ii
然后做一个服务或者一个死循环的线程,用表里取超过某时间段的用户记录,删之
服务不会写,但是怎么在服务器端一直保持一个死循环呢,望给点思路
login 有sessionid:存会话ID userid:存会员ID userdatetime时间字段每个页面都调用一个方法,用sessionid来做唯一性判断,如在login表里面没有有内容就添加内容没登陆所以userid=0 为游客,但他登陆时,就把userid=改成该会员ID),如在login边里面有记录就更新userdatetime时间字段。这样我们只要查看login就字段有多少人在线了。\
//不知道大家是不是这样做的,这样没个页面都调用好象很浪费资源啊,谁有更好见解。
2.如上面问题解决就看下面如何退出登陆:
I:点网页退出按钮,正常退出,删除login表记录,清除session或cookie.(这个没问题) II:问题:非正常退出,关闭浏览器,在线超时 ,那因该怎么删除掉login表里的内容呢,(有人让我在服务器段写个死循环,每次判断userdatetime多久时间没更新就算超时,但是怎么在服务器端维持这样一个死循环呢,还有没有别的解决方法。)谁能在帮我解决下,谢谢