2017-04-05 55 views
0

我有錯誤分頁和剛讀了這個問題:笨分頁:錯誤自動增量數

Incrementing Operator in Foreach Loop for Pagination

它時,我的分頁是活躍工作。當我的分頁是不活動,我的網站在自動增量編號上有錯誤。這裏的圖片:

Page when my pagination is inactive

Page when my pagination is active

這裏是我的模型:

public function countGate() 
    { 
     return $this->db->count_all_results("tbl_gate"); 
    } 

    public function paginationGate($limit, $start) 
    { 
     $this->db->select('*'); 
     $this->db->from('tbl_gate'); 
     $this->db->limit($limit, $start); 
     return $this->db->get(); 
    } 

這裏是我的控制器:

public function gate() 
    { 
     $this->load->view('template/header'); 
     $this->load->view('admin/admin-header'); 

     $config = array(); 
     $config["base_url"] = base_url() . "index.php/admin/gate"; 
     $config["total_rows"] = $this->pagination_m->countGate(); 
     $config["per_page"] = 8; 
     $config["uri_segment"] = 3; 

     $this->pagination->initialize($config); 
     $page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0; 
     $data['allgate'] = $this->pagination_m->paginationGate($config["per_page"], $page); 
     $data['links'] = $this->pagination->create_links(); 

     $this->load->view('admin/admin-gate', $data); 
     $this->load->view('template/footer'); 
    } 

這是我的觀點(帶自動增量減去錯誤表) :

<table class="table table-bordered"> 
     <tr> 
      <th>#</th> 
      <th>Fullname</th> 
      <th>Gate</th> 
      <th>Password</th> 
      <th>Access</th> 
      <th>Active</th> 
      <th colspan="2">Action</th> 
     </tr> 
     <?php 
      $i = 1 + ($this->pagination->cur_page-1)*$this->pagination->per_page; 
      foreach ($allgate->result() as $gate){ 
     ?> 
     <tr> 
      <td><?= $i++ ?></td> 
      <td><?= $gate->Fullname ?></td> 
      <td><?= $gate->Username ?></td> 
      <td><?= $gate->Password ?></td> 
      <td><?= $gate->Level ?></td> 
      <td><?= $gate->Active ?></td> 
      <td><a href="<?= site_url('AdminUpdate/updateGate/'.$gate->IdGate)?>" data-toggle="modal" data-target="#update-gate">Edit</a></td> 
      <td><a href="<?= site_url('admindelete/deletegate/'.$gate->IdGate)?>">Delete</a></td> 
     </tr> 
     <?php } ?> 
     </table> 
+0

我已經更新的代碼檢查。 – Gaurav

+0

@Gaurav現在工作。對不起,沒有注意到你給的所有更新。謝謝:D –

回答

1

它會工作。我正在使用相同的分頁。 更新控制器:

public function gate() 
{ 
    $this->load->view('template/header'); 
    $this->load->view('admin/admin-header'); 

    $config = array(); 

    $config["uri_segment"] = 3; 
    $config["base_url"] = base_url("index.php/admin/gate"); 
    $config["per_page"] = 8; 

    //add this also 
    $config['use_page_numbers'] = TRUE; 
    $config['first_url'] = '1'; 

    $config["total_rows"] = $this->pagination_m->countGate(); 

    $this->pagination->initialize($config); 

    $page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0; 
    $offset = ($page == 0 ? 0 : ($page - 1) * $config["per_page"]); 

    $data['allgate'] = $this->pagination_m->paginationGate($config["per_page"], $offset)->result(); 
    $data['links'] = $this->pagination->create_links(); 

    $data['start'] = ($page == 0 ? 1 : (($page - 1) * $config["per_page"] + 1)); 

    $this->load->view('admin/admin-gate', $data); 
    $this->load->view('template/footer'); 
} 

更新視圖:在控制器

<table class="table table-bordered"> 
    <tr> 
     <th>#</th> 
     <th>Fullname</th> 
     <th>Gate</th> 
     <th>Password</th> 
     <th>Access</th> 
     <th>Active</th> 
     <th colspan="2">Action</th> 
    </tr> 
     <?php foreach ($allgate as $gate){ ?> 
     <tr> 
      <td><?= $start; ?></td> 
      <td><?= $gate->Fullname ?></td> 
      <td><?= $gate->Username ?></td> 
      <td><?= $gate->Password ?></td> 
      <td><?= $gate->Level ?></td> 
      <td><?= $gate->Active ?></td> 
      <td><a href="<?= site_url('AdminUpdate/updateGate/'.$gate->IdGate)?>" data-toggle="modal" data-target="#update-gate">Edit</a></td> 
      <td><a href="<?= site_url('admindelete/deletegate/'.$gate->IdGate)?>">Delete</a></td> 
     </tr> 
     <?php 
      $start++; 
     } ?> 
</table> 
<ul class="pagination"> 
    <?php echo $data['links']; ?> 
</ul> 
+0

@FahmiPoetra我無法理解你的問題。以前分頁活躍。 – Gaurav

+0

我沒有看到$ data [「allgate」]中的控制器更新($ config [「per_page」],$ offset) - > result();對不起這是我的錯。它的工作現在。謝謝:D –

+0

@Gaurav是它($ config [「per_page」],$ offset) - > result();或($ config [「per_page」],$ offset); –