我正在做一个基于MVC codeigniter的项目。我当前的设置是按照以下查询在一个页面中最多显示10个表( ../models/mode.php)
$function getlist($time)
{
$query = $this->db->query('select * from (select job, username,test from jobs by time desc limit 10 ) as a order by time desc');
.....
}
该查询运行良好,在页面中显示了10个表。虽然数据库有10多个条目,但我想在每页中放置10个表,并合并分页,这样我就可以在10个不同的页面中看到所有100个结果。
在控制器中,我尝试使用分页库,但无济于事。
$this->load->library('pagination');
$config['base_url']= 'http://localhost/pc/index.php/proj/submit/';
$config['uri_segment'] =5;
$config['total_rows']= 100;
$config['per_page'] = 10;
$this->pagination->initialize($config);
echo $this->pagination->create_links();
它所做的只是创建链接,但不让我遍历不同的页面(当然,它会这样做,因为控制器不知道它)。我认为limit需要有一个开始和结束值,比如0,100或者开始,结束,但是我怎样才能让控制器知道这一点。有任何反馈/建议吗?我对MVC世界和php/mysql都是新手。
发布于 2014-05-09 15:13:09
您必须处理模型中的分页:
$function getlist($time, $start, $limit)
{
$query = $this->db->query('select * from (select job, username,test from jobs by time desc limit 10 ) as a order by time desc limit '. $limit .', '. $start);
.....
}
在你的控制器中:
// Get pagination page
$page = ($this->uri->segment(5))? $this->uri->segment(5) : 0;
$data = $this->mode_model->getlist($time, $config["per_page"], $page);
发布于 2014-05-12 21:27:44
尝尝这个
$config['uri_segment'] =3;
https://stackoverflow.com/questions/23558537
复制相似问题