1

ページネーションは機能していますが、ページごとに1つのデータしか表示されないのはなぜですか?? そして、私は自分のデータベースに20個のデータをhvし、6ページで6個のデータしか見ることができません:(

これは私のコントローラーです

function view($page=0){
                $config = array();
                $config["base_url"] = base_url() . "index.php/view_expenses/view";
                $config["total_rows"] = $this->emp_expenses_model->getTotalExpensesCount();
                $config["per_page"] =1;
                $this->pagination->initialize($config);
                $this->data["results"] = $this->emp_expenses_model->getExpenses($config["per_page"], $page);
                $this->data["links"] = $this->pagination->create_links();
                $this->data['title'] = 'Payroll System';
                $this->data['message'] = $this->session->flashdata('message');
                $this->load->view('view_expenses', $this->data);

    }

これは私のモデルです

function getTotalExpensesCount() {
            return $this->db->count_all("emp_expenses");
        }
      function getExpenses($limit, $start) {
            $this->db->limit($limit, $start);
            $qry= $this->db->get("emp_expenses");
        return $qry->result();
         }

事前に助けてくれてありがとう:D

4

5 に答える 5

1

これを試して:

function view(){
    $config                 = array();
    $config["base_url"]     = base_url() . "index.php/view_expenses/view/".$this->uri->segment(3);
    $config["total_rows"]   = $this->emp_expenses_model->getTotalExpensesCount();
    $config["per_page"]     = 5;
    $config['uri_segment']  = 3;
    $this->pagination->initialize($config);

    $this->data["results"]  = $this->emp_expenses_model->getExpenses($config["per_page"], $this->uri->segment(3));
    $this->data["links"]    = $this->pagination->create_links();
    $this->data['title']    = 'Payroll System';
    $this->data['message']  = $this->session->flashdata('message');
    $this->load->view('view_expenses', $this->data);

}

function getExpenses($limit, $start = 0) {
    $qry= $this->db->get("emp_expenses", $limit, $start);
    return $qry->result();
}

$config["per_page"] = 5;は、ページごとに 5 つのデータを表示することを意味し$config['uri_segment'] = 3;、クエリで使用するオフセットを保持するセグメントを示します。$config["total_rows"]総数を定義します。テーブル内の行数。$config["base_url"]ページネーションが保持する URL を定義します。
ビューに表示されているデータは、ページネーションとはまったく関係ありません。クエリと取得しているオフセットを確認してください。たとえば、 return ステートメントの直前に配置echo $this->db->last_qeury();die;します。function getExpenses()

于 2013-08-14T06:29:34.327 に答える
1

「1 ページに 1 つのデータしか表示されないのはなぜですか??」のため$config["per_page"] =1;

以下を追加します。

$config['uri_segment'] = 3; // change based on ur url

値を から$config["per_page"] =1;に変更して、 $config["per_page"] =3;1 ページあたり 3 つのデータを表示します。

于 2013-08-14T05:38:47.880 に答える