簡體   English   中英

分頁CI如何顯示

[英]how display with pagination CI

控制器:

function my_feeds()
    {   
        $this->load->model('membership_model');
        $query = $this->membership_model->get_my_feeds();
        if($query->num_rows()>0) {
            $res = $query->result();
            $this->load->view('my_feed',array("query"=>$res));
        }
        else
        {
            echo "No feeds added";
        }

模型:

function get_my_feeds()
    {
        $this->db->where('username',$this->session->userdata('username'));
        $q = $this->db->get('feeds');
        return $q;
    }

視圖:

<ol><?php
foreach ($query as $row){
     echo "<li><a href='".$row->url."'>".$row->title."</a></li><br/>";
};?>

使用控制器,我可以從數據庫中檢索數據並在視圖中顯示它們。 我嘗試進行分頁。 我將此代碼放在控制器函數的if語句中。

$this->load->library('pagination');
                $this->load->library('table');
                $config['base_url'] = 'http://localhost/Codeigniter/index.php/site/my_feeds';
                $config['total_rows'] = $query->num_rows();
                $config['per_page'] = 10;
                $this->pagination->initialize($config);

我不知道如何將結果與分頁聯系起來,以及如何在我的視圖中同時顯示兩者

如果您願意重寫db查詢,則可能的解決方案是:使用PDO並將數據作為存儲在FeedEntryList中的FeedEntry類的對象來獲取,該類實現Iterator接口。 FeedEntryList一個呈現實際頁面結果的函數,例如FeedEntryList::render(1,10)應該返回一個FeedEntry對象數組(第一頁,有10個提要),您可以使用foreach輕松顯示它們。

您的控制器

function my_feeds()
    {   
        $this->load->model('membership_model');
        $this->load->helper('url');
        $query = $this->membership_model->get_my_feeds();

       $this->load->library('pagination');
                $this->load->library('table');
                $config['base_url']='http://localhost/Codeigniter/index.php/site/my_feeds';
                $config['total_rows'] = $query->num_rows();
                $config['per_page'] = 10;
                $config['uri_segment'] = 3;
                $this->pagination->initialize($config);
        if($query->num_rows()>0) {
            $res = $this->membership_model->get_my_feeds($config['per_page'],$this->uri->segment(4));
            $this->load->view('my_feed',array("query"=>$res));
        }
        else
        {
            echo "No feeds added";
        }
    }

模型

 function get_my_feeds($limit = 0,$offset = 0)
    {
        $this->db->where('username',$this->session->userdata('username'));
        if ($limit != 0)
          $this->db->limit($limit,$offset)
        $q = $this->db->get('feeds');
        return $q;
    }

在視圖頁面中,只需在要顯示分頁鏈接的位置添加此行。

<?php echo $this->pagination->create_links(); ?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM