在codeigniter中禁用前端的离子验证

时间:2017-12-12 15:37:34

标签: codeigniter ion-auth

我一直在努力实现这一目标,但没有结果...... 我在我的codeignitor网站上使用了离子身份验证。

我想禁用离线身份验证以进行前端登录,并希望它仅适用于管理员端登录。那可能吗?如果是,那么如何..

我的代码:

    class Login extends MY_Controller {

        public function __construct(){
        parent::__construct();
        $this->load->library('session');
        $this->load->helper('url');
        require_once APPPATH.'vendor/autoload.php';
        }

        public function index(){

            $this->render('login');

        }
}

这会产生以下错误:

A PHP Error was encountered

Severity: Notice

Message: Undefined property: CI::$ion_auth

Filename: MX/Controller.php

Line Number: 59

Backtrace:

File: D:\xampp\htdocs\moneyclues2\application\third_party\MX\Controller.php
Line: 59
Function: _error_handler

File: D:\xampp\htdocs\moneyclues2\application\core\MY_Controller.php
Line: 126
Function: __get

File: D:\xampp\htdocs\moneyclues2\application\core\MY_Controller.php
Line: 59
Function: _setup

File: D:\xampp\htdocs\moneyclues2\application\controllers\Login.php
Line: 7
Function: __construct

File: D:\xampp\htdocs\moneyclues2\index.php
Line: 316
Function: require_once

当我扩展CI_controller时。我得到了渲染方法

的错误
Fatal error: Call to undefined method Login::render() in D:\xampp\htdocs\moneyclues2\application\controllers\Login.php on line 15
A PHP Error was encountered

Severity: Error

Message: Call to undefined method Login::render()

Filename: controllers/Login.php

Line Number: 15

Backtrace:

2 个答案:

答案 0 :(得分:1)

将ion_auth库$autoload['libraries'] = array('database','ion_auth');添加到autoload.php为我工作。

并使用扩展的MY_Controller代替CI_Controller。

答案 1 :(得分:0)

您需要加载Ion_Auth库! $this->load->library('ion_auth');

但是,如果您希望它只用于与管理相关的内容,只需在MY中创建两个不同的core控制器,并让您的公共和管理控制器扩展它们。如果您只在自己网站的1/2中使用它,请不要自动加载Ion_Auth

class MY_Public_Controller extends CI_Controller {

    public function __construct() {
        parent::__construct();
        // load what you need here
    }

}

class MY_Admin_Controller extends CI_Controller {

    public function __construct() {
        parent::__construct();
        // load what you need here
        $this->load->database();
        $this->load->library('session');
        $this->load->library('ion_auth');
    }

}

示例管理员控制器:

class Somecontroller extends MY_Admin_Controller {

    public function index() {

    }

}