php判断自动登录??
要实现3个功能。1、一个用户不允许同时登录,就是同一个用户在A浏览器登录后,如果又使用B浏览器登录,那么会挤掉A浏览器登录状态,A浏览器就需要重新登录。用session_...
要实现3个功能。
1、一个用户不允许同时登录,就是同一个用户在A浏览器登录后,如果又使用B浏览器登录,那么会挤掉A浏览器登录状态,A浏览器就需要重新登录。用session_id已实现。
2、5天内自动登录,这个涉及到判断登录状态。安全性较高的是使用cookie加密判断,但如果使用这种方法,因为cookie是保存在文件夹的,不同浏览器都可获取cookie值,那么第一个功能实现不了。
有什么办法能同时实现两个功能?? 展开
1、一个用户不允许同时登录,就是同一个用户在A浏览器登录后,如果又使用B浏览器登录,那么会挤掉A浏览器登录状态,A浏览器就需要重新登录。用session_id已实现。
2、5天内自动登录,这个涉及到判断登录状态。安全性较高的是使用cookie加密判断,但如果使用这种方法,因为cookie是保存在文件夹的,不同浏览器都可获取cookie值,那么第一个功能实现不了。
有什么办法能同时实现两个功能?? 展开
5个回答
展开全部
1问题实现:新建的数据库用来记录用户登陆信息,关键记录该用户的session_id的值,如果用户用不同的浏览器或不同的电脑登陆他的session_id是不同的。
2问题实现:获取用户的cookie信息,比如用户名与上次登陆的SESSION_id的值,然后查上面1中记录用户登陆情况,然后比较SESSION_id然后判断用户是否有效,然后再判断该用户是否存在数据库中,用户加密的密码是否正确,然后再判断与上次登陆时间是否差5天,为了用户的安全认证可以加一个指纹认证等,防止伪造cookie信息等。
2问题实现:获取用户的cookie信息,比如用户名与上次登陆的SESSION_id的值,然后查上面1中记录用户登陆情况,然后比较SESSION_id然后判断用户是否有效,然后再判断该用户是否存在数据库中,用户加密的密码是否正确,然后再判断与上次登陆时间是否差5天,为了用户的安全认证可以加一个指纹认证等,防止伪造cookie信息等。
追问
如果浏览器设置了“退出时自动清理浏览记录”,例如IE,那么关闭浏览器时所有cookie都会被清除,这时又该如何判断与上次登录时间是否差5天??
追答
cookie如果被清除了,就表示要重新登陆啊,没有cookie还搞个吊啊。
展开全部
你存储cookie的时候记录登录时的时间戳,然后每次打开页面检测改时间戳+5天的时间是否有效,有效的话直接使用cookie里的信息即可,无效则让他重新登录。至于你说的跨浏览器这个功能,貌似不同浏览器存储cookie的位置不一样,所以你重新打开浏览器肯定提示你去登录的,所以要么存入数据库,设置一个时间有效性来判断,如你又其他办法请给予回答,互相学习下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
实现第二个功能时使用session入库的手段
实现第一个则使用,也就是说 产生session是一个入库一个保存到浏览器
那么 实现功能一 验证本地的session 实现功能二 验证数据库中的session 使它们互不影响
实现第一个则使用,也就是说 产生session是一个入库一个保存到浏览器
那么 实现功能一 验证本地的session 实现功能二 验证数据库中的session 使它们互不影响
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用数据库纪录你登录时的时间戳 和session id 然后判断
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
谁说不同浏览器都可获取cookie值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询