CI 묻고 답하기

제목 페이징처리 후, 페이지 이동
카테고리 CI 2, 3
글쓴이 여드름 작성시각 2017/12/16 21:36:47
댓글 : 4 추천 : 0 스크랩 : 0 조회수 : 16517   RSS

*페이징 처리 후, 페이지 이동시 404 에러를 리턴받고있어서

 여러가지 방법을 시도해봤다고 생각하지만, 어디가 잘못됬는지 감을 못잡아서 조언을

 얻고자 글을 남깁니다.

 

1 ) URL  : http://localhost/board/

2) 소스

//테이블

$table = $this->uri->segment(1);

// 페이지네이션 라이브러리 호출

$this->load->library('pagination');

$config['base_url'] = 'board/';

$config['total_rows'] = $this->board_m->getList($table,'count');

$config['per_page'] = 2;

$config['uri_segment'] =2;

$config['use_page_numbers'] = TRUE;

3) 해결 방법 시도

 a) autoload.php에서 url 헬퍼 선언.

 b) $config['base_url'] 값을 변경하여 시도해봄.

    'board/' , 'board/page/', 'http://localhost/board/page/'

 c)   $config['uri_segment'] 값 변경하여 시도.

     http://localhost/board/ 기준으로 보았을때,   "board" 가 segment(1)이기 때문에

     2값도 넣오보고 3값도 넣어봄.

  d) .htaccess  설정을 통해서, index.php 제거했는데 혹시이부분이 문제일까 하는 생각으로

     다시 풀어서도 설정해보았는데 역시 안됨.

  

 계속 같은 곳을 돌고있는것 같아서

 조언을 받고자 글을 남깁니다.

 감사합니다.

 

 

   


첨부파일 404.PNG (101.6 KB)
 다음글 session 설정시 헤더오류 질문 (2)
 이전글 Codeigniter 3에서 euc-kr 환경으로 개발... (4)

댓글

kaido / 2017/12/16 21:56:55 / 추천 1

페이징 처리 이전에 board 페이지가 제대로 나오는지 부터 확인 하셔야 합니다.

현재 호출된것은

board 컨트롤러에 function page()  이라는 메소드를 페이지로 호출하고 있습니다.

uri_segment 에는 페이지 숫자가 들어가게 지정해야 하며

base_url 에는 나타날 주소 전체가 들어가야 합니다.

 

http://cikorea.net/bbs/view/lecture?idx=7097&page=3&view_category=&lists_style=

참고해 보세요 ^^

 

페이징 라이브러리는 단순히 [A 태그 링크 주소] 만 만들어 줍니다. 라이브러리는 하는게 사실 아무것도 없습니다.

컨트롤러에서 메소드를 만들어 놓는게 중요합니다.

여드름 / 2017/12/16 22:00:07 / 추천 0
@kaido
http://localhost/board/ 로
리스트페이지는 정상 출력됩니다.
등록주신 링크참고해보고 답글달아두겠습니다.
감사합니다!
변종원(웅파) / 2017/12/16 22:41:45 / 추천 0

http://localhost/board/ 주소로 정상호출된다면 주소에서 index 메소드가 생략된 겁니다.

http://localhost/board/index/page/2 가 맞습니다. 

index 메소드는 생략할 경우 접근이 되지만 뒤에 파라미터가 더 붙는 경우는 기술을 해줘야 합니다.

여드름 / 2017/12/17 01:42:39 / 추천 0

@웅파

조언주신 개념에 대해 다시 숙지하고 처리하니 정상처리 이루어졌고,

아래와 같이 처리 후, 분석해보았습니다.

a)처리

$config['base_url'] = '/board/index/page';

$config['uri_segment'] = 4;

http://localhost/board/index/page/6

b)미해결 분석

가장 기본적인 부분을 생각하지 못했습니다.

http://localhost/board/ index 메소드 생략에 대해서 전혀 생각 못했습니다.

board 컨트롤러를 호출하고,  모델에서 데이터를 받아오면, 알아서 board 뒤로 페이지관련 sement를

붙이는게 당연하다고 생각하고, "board/page/3" 의 형태로 방향을 잡았던게 원인이었습니다.