>백엔드 개발 >PHP 튜토리얼 > 判断是不是在登录状态

判断是不是在登录状态

WBOY
WBOY원래의
2016-06-13 13:15:341207검색

判断是否在登录状态
比如我登陆的时候
执行sql update user set islogin='1' where 条件

但是退出的时候怎么让它置零呢?
点击退出按钮的话 仍然可以利用sql 来update

但是如果不通过点击退出按钮,只是session 存储的没有了, 
这时应该要如何处理呢?

------解决方案--------------------
cookie seesion设置过期时间,因为比如浏览器崩溃等非正常关闭的时候你根本就不能把数据库中字段置为0
------解决方案--------------------
对于这种状态,一般都是session处理,浏览器关掉,自动清除"登录状态"了
------解决方案--------------------
点击退出按钮,我就不说了。
不点击退出按钮,只是session没有的情况:
你要同步session和数据库内容,你在登录的时候就去判断如果session中此字段为0,但后台数据库中有这个属性字段为1,应该将数据库字段同步为0,要求用户输入用户名、密码重新登录

session也能防止同一时间同时用一个账号登录,不过是将前一个用户挤掉,具体方法可以参见:http://www.cnblogs.com/heaiping/archive/2010/01/19/1651835.html
------解决方案--------------------
退出的的时候传递一个GET参数

然后存在GET参数
执行UPDATE语句 + session_destroy()
------解决方案--------------------
推荐看下session机制

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.