1

私のモデルには、フレーズなどを検索するために使用したい次の関数があります。ただし、複数の単語を渡すと、スペースは常に %20 記号に変換され、クエリが壊れます。どうすればこれを回避できますか?

また、このタイプのクエリはデフォルトで codeigniter で安全ですか? または、最初に $term をエスケープする必要がありますか?

function get_search_entries($limit, $start, $term)
 {

    $this->db->select('statuses.id, title, status, posted_by, created, rating, name');
    $this->db->from('statuses');
    $this->db->join('categories', 'categories.id = statuses.category_id');

    $this->db->where('MATCH (title, status) AGAINST ("'.$term.'")', NULL, FALSE);
    $this->db->limit($limit, $start);
    $query = $this->db->get(); 

    if ($query->num_rows() > 0) {

        return $query->result();   
    }

    return false;      
  }  
4

1 に答える 1

0

rawurldecode()入力文字列で使用します。

于 2013-02-20T00:33:20.500 に答える