codeigniter分页不限制从db返回的行



嗨,我目前正在为我的项目进行分页。我想做的是将数据库中返回的记录限制为每页3行。显然,分页链接得到了响应,但它仍然返回数据库中的所有行,而不会将记录限制为3。

这是我的代码:

型号

function fetchItemsOrderBy($table, $data = NULL,$column,$order,$limit, $start){
if ($data != NULL){
$this->db->where($data);
}
$this->db->order_by($column, $order);
$this->db->limit($limit, $start);
$query = $this->db->get($table);
return ($query->num_rows() > 0) ? $query->result() : FALSE;
}

查看

<section class="review-section">
<div class="container">
<?php
if($article = $this->NCCT_Model->fetchItems('articles')):
foreach ($article as $articleEntry): 
?>
<div class="review-item">
<div class="row">
<div class="col-lg-4">
<div class="review-pic">
<img src="<?php echo base_url()."uploads/"?>Articles_Attachments/<?=$articleEntry->attachment?>" alt="">
</div>
</div> 
<div class="col-lg-8">
<div class="review-content text-box text-white">
<div class="top-meta"><?=date("F j, Y",$articleEntry->posted_on)?> / in <a style="color: #ffae42;"><?=$articleEntry->category?></a></div>
<h3> <?=$articleEntry->title?></h3>
<p style="color: #2e2e2e"><?=substr($articleEntry->overview, 0, 500)?>.....</p>
<a href="<?php if($checker) { echo base_url().'UserHome/announcementsReadMore/',$articleEntry->entry_id; } else { echo base_url().'Home/announcementsReadMore/',$articleEntry->entry_id; } ?>" class="read-more">Read More  <img src="<?php echo base_url()."assets/"?>img/icons/double-arrow.png" alt="#"/></a>
</div>
</div>
</div>
</div>
<?php endforeach; endif; ?>
<p><?php echo $links; ?></p>
</div>
</section>

控制器

public function announcements(){
$config = array();
$config['base_url'] = base_url()."Home/announcements";
$config['total_rows'] = $this->NCCT_Model->get_count('articles');
$config['per_page'] = 3;
$config['uri_segment'] = 2;
$this->pagination->initialize($config);
$page = ($this->uri->segment(2)) ? $this->uri->segment(2) : 0;
$checker = $this->session->userdata('logged_in');
$data = [
'title' => "Articles and Announcements",
'checker' => $checker,
'links' => $this->pagination->create_links(),
'articles' => $this->NCCT_Model->fetchItemsOrderBy('articles', null, 'entry_id', 'ASC', $config['per_page'], $page),
];
$this->load->view('pages/includes/header', $data);
$this->load->view('pages/articlesAndAnnouncements');
$this->load->view('pages/includes/footer');
}

希望你能帮我解决这个问题。提前感谢!

尝试从视图中删除

if($article = $this->NCCT_Model->fetchItems('articles')):

和变化:

<?php endforeach; endif; ?>

<?php endforeach; ?>

最新更新