codeigniter - 登录页面中的挂钩给出错误 localhost 将您重定向了太多次
问题描述
我收到错误 - localhost 将您重定向了太多次。in hooks 这是我在 hooks 中的代码。我无法解决这个问题,请帮助我并解释如何在 ci 中使用 hooks,我正在使用 post_controller_constructor
<?php
class Example {
private $CI;
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
}
//echo "class".$this->CI->router->class; die;
if ( $this->CI->router->class == 'student' )
{
return;
}
}
public function check_login()
{
echo $session_userdata = $this->CI->session->userdata('email');
echo "session data".$session_userdata;
// die;
if(empty($session_userdata)) {
redirect("student/index");
}
else {
echo "here";
}
}
}
?>
解决方案
首先,如果您是第一次在 CodeIgniter 中使用钩子,请按照一些步骤操作。
Step1:启用钩子
可以在 application/config/config.php 文件中全局启用 hooks 功能
打开 config.php 文件执行以下替换
$config['enable_hooks'] = FALSE;
至
$config['enable_hooks'] = TRUE;
第二步:定义一个 Hook
Hooks 在 application/config/hooks.php 文件中定义。
$hook['post_controller'] = array(
'class' => 'firstHookFile',
'function' => 'checkHook',
'filename' => 'firstHookFile.php',
'filepath' => 'hooks'
);
Step3:创建钩子文件
在应用程序/钩子中创建文件。
<?php
class firstHookFile
{
public function checkHook()
{
// load the instance
$this->CI =& get_instance();
$this->CI->load->helper('uri');
echo base_url();
return;
}
}
?>
此挂钩仅用于示例目的,此挂钩将返回您项目的基本 URL。
我希望您已经了解如何在 Codeigniter 中使用钩子。
推荐阅读
- c# - 安全地创建 EF Core DbContext 的新实例
- flutter - 容器中的图标按钮溢出
- powershell - Powershell - 从包含非英文字符的网站中检索内容并写入文件会导致字符不正确
- python - 一次运行两个 python 文件
- matlab - 用于绘制量化和数字信号的 Matlab 命令是什么?
- arrays - 有没有办法将符文打印为单个字符?
- c# - 使用工厂方法.net 进行依赖注入
- javascript - 创建新的 PIXI 精灵后不显示
- c# - 如何使用 App.config 存储 url 并在使用 C# 测试 Selenium 测试时检索 url?
- django - 添加小部件折叠表单