Codeigniter - 设置限制和偏移时的分页问题

时间:2012-05-07 03:28:38

标签: php mysql codeigniter

我很难写这个查询并让它在分页时正常工作。查询本身工作正常。问题在于$query_count,它被传递给控制器​​以处理分页。

$query_count应该等于查询返回的总行数,但是现在它被限制为10,因为我在get()时设置了限制。如何将限制和偏移量传递给查询,但仍然可以从$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;

1 个答案:

答案 0 :(得分:2)

您需要编写另一个查询来获取行数(无限制)。 它应该解决你的问题。