我正试图加载一个博客类型的页面,我用这个控制器从数据库中加载条目
public function blog($page){
$this->load->model("model_get");
$this->load->view("site_header");
$this->load->view("site_nav");
$counter = $this->model_get->getBlogcount();
for($counter; $counter > 0; $counter --){
$data["results"] = $this->model_get->getBlog($counter);
$this->load->view("content_blog", $data);
}
}
$this->load->view("site_footer");
}
这个型号的
function getBlogcount(){
$result = $this->db->count_all("blog");
return $result;
}
我统计数据库中的条目,并根据它们的ID进行调用。但现在我正尝试创建多个页面,每次输入新条目时都会自动展开。假设我有27个条目,并且希望一个页面上的条目不超过5个,我该如何制作它,以便它创建必要的6个页面来显示它们,而不加载其他3个空条目和其他东西。我是代码点火器的新手,一直使用ASP.NET,任何帮助都会很有帮助。提前感谢!
p.s.英语不是我的第一语言
CodeIgniter有自己的分页类。看看这里:http://ellislab.com/codeigniter/user-guide/libraries/pagination.html
你可以先尝试一下,然后适应你的项目:
public function blog($page = 0)
{
$this->load->library('pagination');
$this->load->helper('url');
$config['base_url'] = base_url('blog/'. $page);
$config['total_rows'] = $this->model_get->getBlogcount();
$config['per_page'] = 5;
$this->pagination->initialize($config);
$data['results'] = $this->model_get->getBlog($config['per_page'], $page);
$this->load->view("content_blog", $data);
}
编辑您的"getBlog"函数模型以获得带有限制子句的结果,如下所示:
function getBlog($limit, $start)
{
$results = $this->db->limit($limit, $start)->get('your_blog_table');
if ($results)
{
return $results->result();
}
return FALSE;
}
并在您的视图中使用此代码来创建分页链接:
echo $this->pagination->create_links();