こんにちは私はpost_controllerフックを使用して、ログインしているかどうかをユーザーに検証していますが、検証に失敗すると、ユーザーをログインコントローラーにリダイレクトします....問題は、デフォルトのコントローラーにリダイレクトするときにpost_controllerフックが再度呼び出され、このようにして無限ループが開始することです。繰り返しリダイレクトします。ログインコントローラーを除くすべてのコントローラーに対してpost_controllerフックを呼び出したい...ユーザーがログインしている場合はセッションライブラリもpostコントローラーにロードするため、セッションライブラリを何度もロードする必要がない方法もあります設定ファイルの自動ロードを介して...これが私のコードです
//Hooks
$hook['post_controller'] = array(
'class' => 'is_login',
'function' => 'index',
'filename' => 'is_login.php',
'filepath' => 'hooks'
);
//Is_Login Hook
class is_login {
function __construct(){
$this->CI =& get_instance();
if(!isset($this->CI->session)) //Check if session lib is loaded or not
$this->CI->load->library('session'); //If not loaded, then load it here
}
public function index()
{
$login_id = $this->CI->session->userdata('login_id');
$login_flag = $this->CI->session->userdata('logged_in');
if ($login_flag != TRUE || $login_id == "")
{
redirect(site_url().'/welcome_login', 'refresh');
}
}
}