2016-02-03 42 views
0

我在我的圖書館gettig一個錯誤我的定製庫功能無法正常工作

Undefined property: Authenticate::$ci

這裏是我的自定義庫函數

function is_logged_in() { 

    $sessionid = $this->ci->session->userdata('moderId'); 

    if($sessionid) { 
    return isset($sessionid); 
    } else if(!$sessionid) { 
    redirect(base_url() . 'moderator'); 
    } 

} 

這裏是我的控制器

class B2bcategory extends CI_Controller { 

    function __construct() { 
     parent::__construct(); 
     $this->load->model('moderator/b2bcategory_model'); 

     $this->authenticate->is_logged_in(); 
    } 
} 
+0

難道延長您嘗試任何 – user4419336

回答

0

我沒有看到您是否已將get_instance()加載到您的con中圖書館的結構區域,嘗試一些像這樣的事情在你的身份驗證庫

文件名:Authenticate.php

<?php 

class Authenticate { 

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

    function is_logged_in() { 

     $sessionid = $this->CI->session->userdata('moderId'); 

     if($sessionid) { 
      return isset($sessionid); 
     } else if(!$sessionid) { 
      redirect(base_url() . 'moderator'); 
     } 

    } 
} 

我發現,似乎與get_instance你的庫$this->CI更好的作品。

要在控制器上加載庫,如果你沒有自動加載它使用。

文件名:B2bcategory.php

<?php 

class B2bcategory extends CI_Controller { 

    public function __construct() { 
    parent::__construct(); 
    // Or Auto load it 
    $this->load->library('authenticate'); 
    $this->load->model('moderator/b2bcategory_model'); 
    $this->authenticate->is_logged_in(); 
    } 

} 
+0

謝謝你這麼much.i得到它 – Angel

0
$this->load->model('moderator/b2bcategory_model', 'authenticate'); 

$這 - >負載>模型( 'REAL_MODEL_PATH', 'PROPERTY_IN_CONTROLLER')

USAGE $這 - > PROPERTY_IN_CONTROLLER-> library_method( )

,但最好的方法是在應用程序/核心創建ModeratorController.php

ModeratorController extends CI_Controller 
{ 
    public function __construct() 
    { 
      parent::__construct(); 

      if($this->session->userdata('moder_id') === false) 
      { 
       redirect('site/moder_login'); 
      } 
    } 
} 

而且所有莫代爾控制器從該控制器

+0

我認爲這個問題是在圖書館不是模態約$ CI錯誤的答案。 – user4419336