Codeignator Hooks提前 [英] Codeigniter Hooks advance

查看:139
本文介绍了Codeignator Hooks提前的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

你好,我使用post_controller钩子验证用户是否登录
但是当验证失败,我重定向用户到登录控制器....
现在的问题是,当它重定向到defaults控制器post_controller钩子被再次调用,这样无限循环重复开始重定向。
i要为每个控制器调用post_controller钩子,除了登录控制器....
也是有一种方式,我不需要重新加载会话库,因为,如果用户登录,然后它加载会话库在post控制器以及通过配置文件中的自动加载...
这里是我的代码

Hello i am using post_controller hooks to validate user whether logged in or not But when validation fails i redirect user to login controller.... Now the problem is when it redirect to defaults controller post_controller hooks is called again and in this way infinite loop starts with redirection repeatedly. i want to call post_controller hook for every controller except login controller.... also is there way that i don't need to load session library again and again because, if user is logged in then it loads session library in post controller as well as via auto-load in config file... Here is my code


    //Hooks
    $hook['post_controller'] = array(
                                'class'    => 'is_login',
                                'function' => 'index',
                                'filename' => 'is_login.php',
                                'filepath' => 'hooks'
                                ); 


推荐答案

似乎它不是一个好地方使用Codeigniter钩子。最好是在应用程序中扩展Controller类,并在构造函数中检查用户是否登录并重定向到登录控制器。但不需要从您的控制器扩展登录控制器,而是从CI_Controller扩展它。

It seems it is not a good place to use Codeigniter hooks. It is better if you extend the Controller class in your application and in the constructor you can check if user is logged in and redirect to login controller. But no need to extend the login controller from your controller instead extend it from CI_Controller.

这篇关于Codeignator Hooks提前的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆