2017-10-12 188 views
0

我正在過濾一些數據,我有一個名爲「faculty」的字段,選項是「教授,副教授,研究教授」......等等。我的過濾適用於所有其他領域,但對於這種特定情況,我遇到了麻煩,因爲教授單詞出現在所有數據中,因此我得到與「教授」單詞匹配的所有數據,因此它不會過濾任何內容。我怎樣才能讓它只搜索「教授」這個特定的詞,並避免讓所有其他人(研究教授,副教授......)?使用代碼點火器在數據庫中搜索EXACT字

//我的代碼

function get_search_filters($limit, $start, $search_faculty) 
{ 
    $this->db->order_by('lname', 'asc'); //order records by last name 
    $this->db->limit($limit, $start); 

    /* search keyword in all columns*/ 
    $this->db->like('faculty', $search_faculty); 

    $query = $this->db->get('expertise'); 
    if ($query->num_rows() > 0) { 
     foreach ($query->result() as $row) { 
      $data[] = $row; 
     } 
     return $data; 
    } 
    return false; 
} 
+1

使用where'的''而不是like'。 –

+0

在您的表格中添加「title_id」列,例如,教授= 0研究教授= 1等...然後添加一個where子句來過濾所需的title_id – Vickel

回答