2013-10-23 118 views
0

繼續抓住PHP和Codeigniter,我有一個問題,從我的控制器傳遞搜索詞的參數到我的模型,分頁。Codeigniter搜索詞與分頁

我有一個完全正常工作的腳本(分頁)已經工作了......但是,試圖將輸入後搜索術語包括到模型中,這一切都搞得一團糟(或者我把它搞亂了)。

工作腳本 - 控制器:

public function search() 
    { 
$this->load->model('Products_model'); 
$config['base_url'] = base_url() . '/products/search/'; 
$config['total_rows'] = $this->db->count_all('affiliate_window'); 
$config['per_page'] = 25; 
$config['uri_segment'] = 3; 
$this->pagination->initialize($config); 
$data['offset_no'] = $this->uri->segment(3); 
$data['items'] = $this->Products_model->get_search($config['per_page'], $data['offset_no']); 
$this->load->view('header_view'); 
$this->load->view('products_view', $data); 
$this->load->view('footer_view'); 
    } 

工作腳本 - 型號:

   function get_search($limit, $offset) 
       { 
$query = $this->db->get('mydb', $limit, $offset); 
return $query->result(); 
       } 

因此,在我現在該如何去傳遞$這個 - >輸入 - >發表任何意見(」搜索詞');從控制器到我的模型中使用這樣的:

   function get_search($limit, $offset) 
       { 
$this->db->like('name', '$SEARCHTERM'); 
$query = $this->db->get('mydb', $limit, $offset); 
return $query->result(); 
       } 

而且,我相信我未來要在保持整個每個頁面的搜索項變量遇到的問題。

任何建議非常歡迎 - 我一直在這工作了幾個小時,沒有結果! :)

回答

0

因此,瞭解您的分頁代碼&所有其他代碼是「不相關的」 - 意思是說,他們不需要另一個代碼的功能。

您將像搜索其他參數&一樣將搜索詞傳遞給您的模型函數;限制&偏移量只是簡單地標記到您的查詢的結尾,就像您現在正在做的那樣。

因此,如果搜索「myterm」,您只需建立與查詢:

WHERE term = "myterm" LIMIT offset, limit 

它一旦你身邊你實際上是在做什麼

你的腦袋真的很簡單