2012-05-07 11 views
0

このクエリを作成してページ設定を正しく機能させるのは難しいです。クエリ自体は完全に動作しています。問題は$query_countであり、ページネーションを処理するためにコントローラに渡されています。Codeigniter - 制限とオフセットを設定するとページネーションの問題が発生する

$query_countは、クエリによって返された行の総数と等しくなければなりませんが、現在は、get()という制限を設定しているため、10に制限されています。クエリに制限とオフセットを渡すにはどうすればよいですか?$queryから合計行数を取得するにはどうすればよいですか?

// Build query result for active projects 
    if (!empty($campus) && $campus != 'all-campuses') { 
     $this->db->where('campus', $campus); 
    } 
    if (!empty($type) && $type != 'all-types') { 
     $this->db->where('type', $type); 
    } 
    if (!empty($talent) && $talent != 'all-talent') { 
     $this->db->like('talent', $talent); 
    } 
    if (!empty($keyword)) { 
     $this->db->like('title', $keyword); 
    } 
    $this->db->where('active', true); 
    $this->db->order_by("date_created", "desc"); 
    $query = $this->db->get('projects', 10, $data['offset']); 
    $the_rows = $query->result_array(); 
    $query_count = $query->num_rows(); 
    $query_meta['count'] = $query_count; 

答えて

2

行数を取得するための別のクエリを作成する必要があります(制限なし)。 問題を解決するはずです。

+1

オクラホマ...もっとシンプルでクリーンな方法があると思っただけですか? – coryetzkorn

+0

ちょうどそれを試して、それは動作しました!ありがとう! – coryetzkorn

関連する問題