2016-08-07 3 views
2

Я попытался загрузить base_url() в контроллер, но codeigniter не загружает helper('url'). Я также вызываю помощника от autoload и конструктора как в hook, но он все еще не работает и показывает ошибку «Попытка получить свойство не-объекта».Не удается загрузить URL-адрес помощника в codeigniter

Любая идея, как я могу перенаправить?

Мой код:

if (!defined('BASEPATH')) exit('No direct script access allowed'); 

class Auth_hook { 

    protected $CI; 

    public function __construct() { 
     $this->CI =& get_instance(); 
     $this->CI->load->helper('url'); 
    } 

    public function index(){ 
     redirect(base_url('auth/login')); 

     print_r("hello!!"); 
     if(isset($_SESSION['name']) == 'TRUE'){ 
     redirect(base_url('auth/admin')); 
     } 
     else { 
     redirect(base_url('auth/login')); 
     } 
    } 
} 
+0

нагрузки только один раз. Я предлагаю удалить его с крючка и поместить его только в файл FCPATH.config/autoload.php''. И в случае, если вы не используете предварительный системный крючок. В противном случае сначала загружается 'APPPATH.'config/autoload.php''. – Tpojka

ответ

1

Как об этом:

class Auth_hook { 

    protected $CI; 

    public function __construct() { 
     $this->CI =& get_instance(); 
    } 

    public function index(){ 
    // can communicate back with CI by using $this->CI 
    $this->CI->load->helper('url'); 

    redirect(base_url('auth/login')); 

    print_r("hello!!"); 
    if(isset($_SESSION['name']) == 'TRUE'){ 
     redirect(base_url('auth/admin')); 
    } 
    else { 
     redirect(base_url('auth/login')); 
    } 
    } 
} 
Смежные вопросы