【发布时间】:2018-05-05 16:55:39
【问题描述】:
我的英语不好,很抱歉有任何错误。我试图使用 codeigniter 分页库,但我遇到了一个问题,它会创建额外的链接。我的数据在两页中完成,但是当我点击第三或第四个链接时,底部出现了 4 个页面链接,它给出了错误。 这是我的控制器代码..
public function usr_list(){
$config = array();
$config["base_url"] = base_url() . "usr/usr_list";
$config["total_rows"] = $this->ListModel->record_count();
$config['full_tag_open'] = '<ul class="pagination">';
$config['full_tag_close'] = '</ul>';
$config['first_link'] = false;
$config['last_link'] = false;
$config['first_tag_open'] = '<li>';
$config['first_tag_close'] = '</li>';
$config['prev_link'] = '«';
$config['prev_tag_open'] = '<li class="prev">';
$config['prev_tag_close'] = '</li>';
$config['next_link'] = '»';
$config['next_tag_open'] = '<li>';
$config['next_tag_close'] = '</li>';
$config['last_tag_open'] = '<li>';
$config['last_tag_close'] = '</li>';
$config['cur_tag_open'] = '<li class="active"><a href="#">';
$config['cur_tag_close'] = '</a></li>';
$config['num_tag_open'] = '<li>';
$config['num_tag_close'] = '</li>';
$config["per_page"] = 10;
$config["uri_segment"] = 3;
$choice = $config["total_rows"] / $config["per_page"];
$config["num_links"] = round($choice);
$this->pagination->initialize($config);
$page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;
$data["results"] = $this->ListModel->getUser($config["per_page"] , $page);
$data["links"] = $this->pagination->create_links();
$this->load->view('userList' , $data);
}
这是我的模型代码
function getUser($limit , $start){
$this->db->select("u_id,name,email,phone,cnic");
$this->db->from('user');
$this->db->limit($limit , $start);
$query = $this->db->get();
if($query->num_rows() > 0) {
foreach ($query->result() as $rows) {
$data[] = $rows;
}
return $data;
}
return false;
}
在图片中您可以看到最后一条记录在第 2 页,但有 4 个链接
有什么建议吗?
【问题讨论】:
-
你能在“ListModel”模型中发布你的“record_count”函数吗?
-
更改 $config["num_links"] = 1;甚至 0 因为这是在当前页面之前和之后显示的页面数。实际链接是根据 total_rows 和 per_page 设置计算的。
-
@vivek 这是回合函数的代码: public function record_count() { return $this->db->count_all($this->db->dbprefix . 'attendence'); }
-
@TimBrownlaw 这样做并没有解决这个问题,因为在第二页之后,当我点击下一页时,它仍然显示相同的错误。