在用ThinkPHP写后台管理模块的用户登陆权限的控制时,如何防止其他用户直接访问后台首页,需要对管理员是否登陆要进行验证。因为后台的页面不止一个页面,所以,如果针对每一个页面都做权限管理的话会很麻烦。
在TP里,可以通过实现一个公共的控制器,让后台的控制器直接继承这个公共控制器即可,在访问后台首页时,会先访问这个公共的控制器,只要在这个公共的控制器中,做好管理员验证的事情即可。
公共的控制器类放在应用程序\ \常见\ \控制器目录下,命名为CommonController.class。php,命名空间如下:
代码如下:
& lt; php ? namespace 常见\控制器; use 认为\控制器; class CommonController  extends Controller  { ,,,public function _initialize () { ,,,,,,, ,,,,,,,//判断会话里是否有值 ,,,,,,,如果(!会话(' ?用户名')){ ,,,,,,,,,,,重定向('/admin.php/登录/登录',2 '请先登陆”); ,,,,,,,} ,,,} }
子类继承时:这里用的时管理模块
& lt; php ? namespace 管理\控制器; use 常见\控制器\ CommonController; class IndexController  extends CommonController  { ,,,//后台首页模板显示 ,,,public function 指数(){ ,,,,,,,这个美元→显示(); ,,,} }
清空会话:
,,,,public function 注销(){ ,,,,,,,//清除会话 ,,,,,,,_SESSION 美元;=,数组(); ,,,,,,,会话(空); ,,,,,,,会话(“(破坏)”); ,,,,,,,重定向('/admin.php/登录/登录',2 '退出成功,返回首页”); ,,,,,,,退出; ,,,}