2012-03-14 5 views
0

마지막 날 CI의 페이지 매김을하고 있습니다. 나는 이미 설정을했고 그 일은 완벽하게 작동한다. 컨트롤러의 기능에서 나는 URL을 검사하는 IF 문을 만들었습니다.Codeigniter의 페이지 네비게이션이 작동하지 않습니다.

IF url is localhost/CI/index.php/controller/function/news 
THEN return first page of results from database -> first page 
BUT IF url is localhost/CI/index.php/controller/function/news/10 
THEN return second page of results from database -> second page 

그러나 CI의 페이지 매김 컨트롤러의 기능을 한 후 결과 수있는 경우에만 탐색 작동하기 때문에 문제가있다 -> 로컬 호스트/CI/index.php를/컨트롤러/기능/10.

localhost/CI/index.php/controller/function/news/10과 같은 URL로 탐색 할 수있는 해결 방법이 있습니까? (뉴스, 카테고리 및 기타 기본 기능에 대한 기본 정보를 보여 드리고자합니다.)

답변

0

우선 첫 번째 페이지인지 두 번째 페이지인지 등을 확인하기 위해 if 문을 사용할 필요는 없습니다. Codeigniter는 적절한 데이터를 표시합니다. 그러나 당신이 할 수있는 것은 페이지 번호가 있는지 확인하는 것입니다.

페이지 매김이 작동하는 방식은 데이터베이스의 오프셋 및 제한 기능을 사용하는 것입니다.

그래서 페이지 1이 될 것이다 : 한계 5 (페이지 당 최대), 오프셋 : 0 (0부터) 페이지 2 한계 5 (페이지 당 최대)은 오프셋 : 6

전형적 CodeIgniter의 여부를 확인 할 URL 세그먼트 (기본적으로 3 개)가 유효하면 그렇지 않으면 1을 가져옵니다.

잘못된 코드 일 수 있습니다. 게시하는 것이 좋습니다.

+1

감사합니다. 설정에 uri_segment를 추가하는 것을 잊어 버렸습니다. 그래서이 질문에 대한 답은 $ config [ 'uri_segment'] = 4; – user1257255

관련 문제