php如何验证客户端,用来设计保存用户登陆状态?

极品渣子 发布于 2012/07/04 17:23
阅读 1K+
收藏 0
PHP

不用session或url来保存sessionid这类的方法。

目前设想就是用户登陆后用USERID做主键,用key = md5($_SERVER['HTTP_USER_AGENT'] +$_SERVER['REMOTE_ADDR '])为值来保存登陆时的信息,这样PHP只要用md5($_SERVER['HTTP_USER_AGENT'] +$_SERVER[' REMOTE_ADDR '])来查询数据库里是否有这条记录来判断用户是否登陆,这样可靠吗?

加载中
0
deleted
deleted
不可行,  部分高校,网吧, 小的ISP,小区宽带,公司一个IP后面有成千上万人
deleted
deleted
回复 @ztd : session id的生成本身就确保是唯一的。 你也可以直接加密cookie,把用户id什么的直接保存在cookie里
极品渣子
极品渣子
像同一个IP多人使用的,如何分辨客户端?
deleted
deleted
回复 @ztd : 没有, 基本都是cookie存key, 服务端存value,也就是session了,最多存储方式有点不同。 url传session id容易出安全问题,一般不用
极品渣子
极品渣子
如果不用cookie或url保存登陆时生成的唯一ID方式,有更好的办法或实例吗?
0
王昊然
王昊然
还有一点,你这样每个页面都得查询数据库判断是否登录
极品渣子
极品渣子
有这个影响,或把值放到内存里存取也行。
0
mark35
mark35
楼主可以参考discuz的 authcode() 认证函数
0
酒逍遥
酒逍遥
html5的话 不用 cookie session 还能有办法... html4 的话 还是用 cookie吧
返回顶部
顶部