2017-04-05 2 views
0

내가 오류 페이지 매김이 바로이 질문에 읽어 내 매김이 활성화CodeIgniter의 페이지 매김 오류 자동 증가 번호

Incrementing Operator in Foreach Loop for Pagination

그것의 작동을. 내 페이지 매김이 비활성 일 때 내 웹에 자동 증가 숫자에 버그가 있습니다. 여기 Page when my pagination is active

Page when my pagination is inactive

내 모델입니다 : 여기

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

($ config [ "per_page"], $ offset) -> result();가있는 $ data [ "allgate"]에서 컨트롤러 업데이트를 보지 못했습니다. 미안 내 실수. 그 지금 일하고있어. 감사합니다 : D –

+0

@ Gaurav 그것입니다 ($ config [ "per_page"], $ offset) -> result(); 또는 ($ config [ "per_page"], $ offset); –