| 제목 | 페이지네이션 질문좀 드립니다. | ||
|---|---|---|---|
| 글쓴이 | 책상다리 | 작성시각 | 2013/11/12 14:05:32 |
|
|
|||
|
게시판 하나 꾸며보는데요. 페이징 처리에 관해 질문이 있어 글 올리게 됐습니다. 일단, 기본 경로는 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
|
|
책상다리
/
2013/11/12 15:11:01 /
추천
0
웅파님 빠른 답변 감사합니다.
메뉴얼에 route부분이랑 포럼소스 참고해서 수정했더니 되는군요 ㅠㅠ 감사합니다 ㅠ 또 하나 좋은거 배워갑니다 ㅠㅠ 감사합니다. |
route로 검색해서 적용해보시거나 포럼소스 받아서 config/routes.php 참고해서 수정해보세요.