Codeigniter登录表单在标题模板中

时间:2014-04-03 11:29:54

标签: php codeigniter login ion-auth

我使用Codeigniter和Ionauth库来管理用户。我使用的结构如下:

Controllers:
- home
- auth

Views:
- home
  - home_view.php

- templates
  - header.php
  - footer.php

- auth
  - login
  - register

当我创建我的主视图时,它会添加header.php和footer.php模板,并将它自己的数据传递给主体。

我的问题是,我想在header.php file(表单内)中使用我的登录功能,但是,目前这不可能,因为我的登录功能位于{ {1}}控制器。我是否可以在/auth/控制器之外使用此登录功能,即。在/auth/文件夹中的header.php文件中?

如果没有,您可以提出任何可能的解决方案吗?

由于

1 个答案:

答案 0 :(得分:1)

是的,你可以这样做 -

将核心ci_controller扩展为MY_Controller

所以,创建你的文件 - application / libraries / MY_Controller.php - 并用这段代码填充它:

<?php

class  MY_Controller  extends  Controller  {

    function MY_Controller ()  {


__construct()
{
parent::Controller();

$this->load->view('templates/header')  // now in this way your header will get automatically included to every controller which extends MY_Controller

}
    }
//...
}
?>

现在将控制器扩展到MY_Controller

class  auth extends  MY_Controller  {
    function  __construct()  {
        parent::MY_Controller();
    }
//...
}

class  home extends  MY_Controller  {
    function  __construct()  {
        parent::MY_Controller();
    }
//...
}