SpeedPHP技术交流论坛

 找回密码
 论坛注册

QQ登录

只需一步,快速开始

搜索
查看: 1687|回复: 5

“SP的权限控制实例”如何用cookie保留登陆状态?

  [复制链接]

9

主题

0

好友

19

积分

武林新贵

Rank: 4

宝贵意见

发表于 2010-2-6 16:12:45 |显示全部楼层
SP的权限控制实例 - 预览版 现在是用会话的,但这样关掉浏览器就得重新登陆,能不能用cookie的方式来控制呢?找不到保留cookie登陆状态的例子,所以以这个留言本提问了。

48

主题

0

好友

3074

积分

管理员

@speedphp

Rank: 9Rank: 9Rank: 9

发表于 2010-2-6 17:08:19 |显示全部楼层
用COOKIE的例子其实很多,像DZ论坛就有的“记录登录密码”这种。
这种记录密码的COOKIE程序,关键在于在每次访问整个网站任何一部分都需要先检查原COOKIE是否存在。
通过SP框架做,也是如此。另外对于用户权限,在检查COOKIE是否存在后,才可以开始对用户进行权限设置(当前会话),这样才能保证权限的安全。

9

主题

0

好友

19

积分

武林新贵

Rank: 4

宝贵意见

发表于 2010-2-7 18:42:57 |显示全部楼层
我现在的疑惑是把检查登陆状态的代码放在哪里才可以全局检查?

48

主题

0

好友

3074

积分

管理员

@speedphp

Rank: 9Rank: 9Rank: 9

发表于 2010-2-8 09:08:33 |显示全部楼层
我现在的疑惑是把检查登陆状态的代码放在哪里才可以全局检查?
php 发表于 2010-2-7 18:42

   在SP中可以放很多地方都可以做全局检查,以 “权限控制实例”举例,可以放到:(从易到难)
  • index.php中
  • acl挂靠的lib_user内的那个无权限跳转acljump函数中(推荐,因为只在无权限的时候才会执行到此函数,而检查COOKIE也放到此函数中的话,会大大减少重复检查的次数)
  • 如果这个检查仅是针对某个控制器,可以放在该控制器的构造函数内,不过这样注意,构造函数内务必在最后要进行parent::__construct();的操作。
  • 在配置中,在acl路由挂靠之前,增加自己的挂靠点程序。

9

主题

0

好友

19

积分

武林新贵

Rank: 4

宝贵意见

发表于 2010-2-8 09:27:47 |显示全部楼层
谢老大,第一次用框架做php,还是选第一种好了,对我最容易。

9

主题

0

好友

19

积分

武林新贵

Rank: 4

宝贵意见

发表于 2010-2-22 17:48:00 |显示全部楼层
最终选择了第四种方法,还是增加挂靠点最方便控制。
您需要登录后才可以回帖 登录 | 论坛注册

手机版|Archiver|SpeedPHP.com ( 粤ICP备08008671号 )  

GMT+8, 2012-5-19 01:55

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部