CI 묻고 답하기

제목 페이지네이션 질문좀 드립니다.
글쓴이 책상다리 작성시각 2013/11/12 14:05:32
댓글 : 2 추천 : 0 스크랩 : 0 조회수 : 13965   RSS
게시판 하나 꾸며보는데요. 페이징 처리에 관해 질문이 있어 글 올리게 됐습니다.

일단, 기본 경로는 C:\xampp\htdocs\application ~ 이런식으로 바로 넣어놓았습니다.

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Board extends CI_Controller {

 function __construct()
 {
  parent::__construct();
    $this->load->database();
    $this->load->model('board_m');
 }

 public function index()
 {
  $this->lists();
 }

 public function _remap($method)
 {
  if( BROWSER_TYPE == 'W' )
  {
   $this->load->view('header_v');

   if( method_exists($this, $method) )
   {
    $this->{"{$method}"}();
   }

   $this->load->view('footer_v');
  }
  else if( BROWSER_TYPE == 'M' )
  {
   $this->load->view('mobile_header_v');

   if( method_exists($this, $method) )
   {
    $this->{"{$method}"}();
   }
   $this->load->view('mobile_footer_v');
  }
 
 }

 public function lists()
 {

  $this->load->library('pagination');
  //페이지네이션 설정
  $config['base_url'] = '/board/';
  $config['total_rows'] = $this->board_m->get_list($this->uri->segment(1),'count');
  //게시물 전체 개수
  $config['per_page'] = 5;
  $config['uri_segment'] = 2;

  //페이지네이션 초기화
  $this->pagination->initialize($config);
  //페이지링크를 생성하여 view에서 사용할 변수에 할당
  $data['pagination'] = $this->pagination->create_links();

  //게시물 목록을 불러오기 위한 offset, limit 값 가져오기
  $page = $this->uri->segment(2, 1);

  if( $page > 1 )
  {
   $start = (($page/$config['per_page'])) * $config['per_page'];
  }
  else
  {
   $start = ($page-1) * $config['per_page'];
  }
  $limit = $config['per_page'];

  $data['list'] = $this->board_m->get_list('ci_board','',$start,$limit);
  //$this->load->view('board/list_v',$data);

  if( BROWSER_TYPE == 'M')
  {
   $this->load->view('mobile_list_v',$data);
  }
  else
  {
   $this->load->view('list_v',$data);
  }
 }
}
소스는 위와 같은데요. 
일단 페이지 목록은 출력이 잘 됩니다. 게시판 목록 밑에 1 2 3 > 뭐 이런 식으로 말입니다.
그런데 2페이지나 3페이지로 넘어가면 게시판 목록이 출력이 안되서 질문드립니다.
127.0.0.1/board/5 또는 127.0.0.1/10 이런식으로 넘어가는데, 세그먼트 주소도 맞는거 같은데;;;
아 그래서 책에서 나와있던데로 혹시몰라서
$config['uri_segment'] = 2;
$page = $this->uri->segment(2, 1); 이 두부분의 2를 3으로 바꿔주고
주소를 127.0.0.1/board/lists/5 이런 식으로 했더니 페이징 출력이 올바르게 되는데요.
혹시 lists를 쓰지않고 127.0.0.1/board/5 이런식으로 할수는 없을까요 ㅠ 
주소를 최대한 간략하게 해보고 싶어서요...


 다음글 route 설정 한번만 더 질문드립니다 ㅠ (5)
 이전글 CI calendar 질문입니다. (6)

댓글

변종원(웅파) / 2013/11/12 14:41:33 / 추천 0
질문하신 것은 페이지네이션이 아니라 route 질문입니다.

route로 검색해서 적용해보시거나 포럼소스 받아서 config/routes.php 참고해서 수정해보세요.

책상다리 / 2013/11/12 15:11:01 / 추천 0
웅파님 빠른 답변 감사합니다.
메뉴얼에 route부분이랑 포럼소스 참고해서 수정했더니 되는군요 ㅠㅠ
감사합니다 ㅠ 또 하나 좋은거 배워갑니다 ㅠㅠ 감사합니다.