2016-09-09 26 views
0

我想讓數據庫呈現頁面信息。codeigniter數據庫信息在哪裏控制器

我有數據庫:

page | title | description 
main | Welcome | This is the main page 

控制器獲取頁面數據,並呈現視圖

class Main extends CI_Controller { 

    function __construct() 
    { 
     parent::__construct(); 
     $this->load->helper(array('url', 'html', 'assets')); 
     $this->load->model('pages_model'); 
    } 

    public function index() { 

     // This is a page variable 
     // in this case it will be "main" 
     $page = strtolower(basename(__FILE__, '.php')); 


     // Page data 
     $data['pg'] = $this->pages_model->page(); 

     // Render 
     $this->load->view('templates/header', $data); 
     $this->load->view('pages/main', $data); 
     $this->load->view('templates/footer', $data); 
    } 

} 

然後模型,其中我試圖爲特定的頁面獲取數據

Class Pages_model extends CI_Model { 

     function page() 
     { 
      $query = $this->db->select('*')->where('page', $page)->get('pages'); 
      return $query->result(); 
     } 

    } 

但我獲取錯誤「未定義變量$模型中的頁面」。我該如何解決它?

回答

2

您錯過了在模型中傳遞「$ page」的信息。更新您的代碼如下:

在控制器:

// Page data 
     $data['pg'] = $this->pages_model->page($page); 

,並在型號

function page($page) 
+0

這可以幫助,但我如何通過數據查看呢? –

+0

找到了。在modet我設置返回$ query-> row();並在視圖中使用$ pg->列 –