Contents

조회 수 8755 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
페이지 넘기기 알고리즘을 알려드리겠습니다. 
다소 어려운 부분이 있을것입니다. 
따로 정의 되어 있어야 하는 변수를 설명 해드리겠습니다. 
------------------------------------------------------ 
$page : 페이지 
$total : 총 게시물수 
$limite : 한페이지당 출력될 게시물수 
$page_num : 한 페이지당 출력될 링크수 
------------------------------------------------------ 

## 한 화면에 표시될 게시물 뽑아오는 알고리즘 
if(!$page) $page=1; // 페이지가 없으면 1로 정한다 
$total_page = intval(($total-1) / $limite)+1; // 총 페이지수를 구해온다 
$first = ($page-1)*$limite; // 뽑아올 게시물 [처음] 
$last = $limite; // 뽑아올 게시물 [끝] 

// 뽑아올 게시물[끝] : 총 게시물 수가 한페이지당 출력될 게시물수보다 적으면 총 게시
물수를 뽑아올 게시물[끝] 으로 정한다 
if($total < $last) $last = $total; 
// 뽑아올 게시물 [처음]~뽑아올 게시물 [끝] 구한값으로 한페이지에 글을 뽑아 온다 
$limit = "limit $first,$last"; 


## 게시물을 출력한다(생략) ##### 


## 페이지 링크 구하는 알고리즘 
// 한 화면에 출력될 페이지 링크가 3개라고 가정 하면 현재 페이지가 4라면 4,5,6 이라
는 링크만 출력되게 한다 
// 4가 나오는식 
$first_page = intval(($page-1)/$page_num+1)*$page_num-($page_num-1); 
// 6을 구하는식 
$last_page = $first_page+($page_num-1); 
if($last_page > $total_page) $last_page = $total_page; 

// [이전] 버튼 링크 
$prev = $first_page-1; 
if($page > $page_num) echo"[이전] "; 


// [4] [5] [6] 
// 페이지 링크 출력 : 4와 6을 구했으니 여기서는 4~6까지를 for문으로 출력 
for($i = $first_page; $i <= $last_page; $i++) 
if($page == $i) echo"[$i] "; // 출력될 번호가 현재 페이지랑 같다면 진하게 
else echo"[$i]"; 

// [다음] 버튼 출력 
$next = $last_page+1; 
if($next <= $total_page) echo"[다음]";


?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
213 System/OS CentOS 에서 Cacti 설치하기 hooni 2015.01.02 1939
212 Develop [ios] Xcode cannot run using the selected device hooni 2014.08.14 1926
211 System/OS [linux] CentOS 에 APM 설치하기 hooni 2015.01.02 1913
210 Etc 인증서 *.p12 파일을 *.pem 파일로 변환 hooni 2015.04.30 1911
209 Develop [php] mysql_ 과 mysqli_ 의 차이 hooni 2017.12.01 1852
208 Develop Laravel 5 Failed opening required bootstrap/../vendor/autoload.php hooni 2018.01.24 1840
207 Develop [python][django] request.cookie 읽어오기 ㅋㅋㅋ (쓰기) hooni 2019.12.06 1834
206 Develop [ios] Pod 특정 버전 설치하고 사용하기 hooni 2022.05.28 1813
205 System/OS [svn] 하나의 SVN에서 멀티 저장소 (One svnserve, multiple repositories) hooni 2015.01.02 1794
204 Develop [c] 한글 문자열 출력 hooni 2015.11.10 1789
203 Develop [ios] @property의 속성 (strong, weak, copy) 사용 경우 hooni 2014.08.08 1777
202 Develop [ios] How To Use UIScrollView to Scroll and Zoom Content (Using Objective-C) file hooni 2016.03.23 1768
Board Pagination Prev 1 ... 76 77 78 79 80 81 82 83 84 85 ... 98 Next
/ 98