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

#1 php

SP的权限控制实例 - 预览版 现在是用会话的,但这样关掉浏览器就得重新登陆,能不能用cookie的方式来控制呢?找不到保留cookie登陆状态的例子,所以以这个留言本提问了。

2010-02-06 16:12:45

#2 jake

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

2010-02-06 17:08:19

#3 php

我现在的疑惑是把检查登陆状态的代码放在哪里才可以全局检查?

2010-02-07 18:42:57

#4 jake

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

2010-02-08 09:08:33

#5 php

谢老大,第一次用框架做php,还是选第一种好了,对我最容易。:)

2010-02-08 09:27:47

#6 php

最终选择了第四种方法,还是增加挂靠点最方便控制。

2010-02-22 17:48:00