거

기본적인 페이징

· 2006-12-07 (목) 22:14:49 · 3583
<?
#
# paging.php
# 페이징 테스트 파일
#

$connect = mysql_connect ( "localhost", "아이디", "패스워드" ) or die ("DB에 연결할 수 없습니다.");
$status = mysql_select_db("DB명", $connect) or die ("DB 사용 실패 : ".mysql_error($connect));

// 페이지 설정
$page_set = 10; // 한페이지 줄수
$block_set = 5; // 한페이지 블럭수

$query = "SELECT count(no) as total FROM board";
$result = mysql_query($query, $connect) or die ("쿼리 에러 : ".mysql_error($connect));
$row = mysql_fetch_array($result);

$total = $row[total]; // 전체글수

$total_page = ceil ($total / $page_set); // 총페이지수(올림함수)
$total_block = ceil ($total_page / $block_set); // 총블럭수(올림함수)

if (!$page) $page = 1; // 현재페이지(넘어온값)
$block = ceil ($page / $block_set); // 현재블럭(올림함수)

$limit_idx = ($page - 1) * $page_set; // limit시작위치

// 현재페이지 쿼리
$query = "SELECT no FROM board ORDER BY no DESC LIMIT $limit_idx, $page_set";
$result = mysql_query($query, $connect) or die ("쿼리 에러 : ".mysql_error($connect));
$rows = mysql_num_rows($result);

// 리스트 뿌리기
echo "<pre>";
while ($row = mysql_fetch_array($result)) {
echo $row[no]."\n";
}
echo "</pre>";

// 페이지번호 & 블럭 설정
$first_page = (($block - 1) * $block_set) + 1; // 첫번째 페이지번호
$last_page = min ($total_page, $block * $block_set); // 마지막 페이지번호

$prev_page = $page - 1; // 이전페이지
$next_page = $page + 1; // 다음페이지

$prev_block = $block - 1; // 이전블럭
$next_block = $block + 1; // 다음블럭

// 이전블럭을 블럭의 마지막으로 하려면...
$prev_block_page = $prev_block * $block_set; // 이전블럭 페이지번호
// 이전블럭을 블럭의 첫페이지로 하려면...
//$prev_block_page = $prev_block * $block_set - ($block_set - 1);
$next_block_page = $next_block * $block_set - ($block_set - 1); // 다음블럭 페이지번호

// 페이징 화면
echo ($prev_page > 0) ? "<a href='$PHP_SELF?page=$prev_page'>[prev]</a> " : "[prev] ";
echo ($prev_block > 0) ? "<a href='$PHP_SELF?page=$prev_block_page'>...</a> " : "... ";

for ($i=$first_page; $i<=$last_page; $i++) {
echo ($i != $page) ? "<a href='$PHP_SELF?page=$i'>$i</a> " : "<b>$i</b> ";
}

echo ($next_block <= $total_block) ? "<a href='$PHP_SELF?page=$next_block_page'>...</a> " : "... ";
echo ($next_page <= $total_page) ? "<a href='$PHP_SELF?page=$next_page'>[next]</a>" : "[next]";

?><div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:12:10 PHP & HTML에서 이동 됨]</div>
|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
07-10-13 조회 5,146
07-10-03 조회 4,119
07-10-03 조회 3,318
07-10-03 조회 2,556
07-10-03 조회 4,639
07-10-02 조회 2,981
07-10-01 조회 3,608
07-09-28 조회 3,512
07-09-27 조회 4,578
07-08-16 조회 6,421
07-08-04 조회 2,873
07-07-25 조회 6,139
07-07-05 조회 4,019
07-07-02 조회 4,566
07-06-30 조회 4,468
07-06-20 조회 7,356
07-06-20 조회 3,967
07-06-05 조회 4,144
07-05-26 조회 3,176
07-05-17 조회 9,171
07-05-17 조회 5,218
07-05-04 조회 6,138
07-04-15 조회 6,223
07-04-13 조회 4,010
07-04-11 조회 3,408
07-03-20 조회 3,586
07-03-02 조회 6,803
07-02-27 조회 6,073
07-02-22 조회 4,475
07-01-30 조회 6,300
07-01-30 조회 1만
06-12-20 조회 3,790
06-12-18 조회 4,636
06-12-15 조회 4,599
06-12-15 조회 3,833
06-12-15 조회 3,222
06-11-30 조회 3,658
06-11-27 조회 4,558
06-10-24 조회 6,473
06-10-17 조회 4,780
06-09-22 조회 4,522
06-09-21 조회 6,022
06-09-21 조회 3,939
06-09-15 조회 6,563
06-08-20 조회 3,710
06-07-19 조회 3,351
06-07-14 조회 4,248
06-07-14 조회 4,113
06-07-11 조회 5,722
06-06-08 조회 4,300
06-06-08 조회 4,207
06-05-24 조회 3,522
06-05-24 조회 4,907
06-05-17 조회 3,622
06-05-16 조회 4,373
06-05-14 조회 6,064
06-05-12 조회 3,639
06-05-06 조회 4,276
06-05-06 조회 4,350
06-05-06 조회 3,659
06-05-06 조회 3,729
06-05-06 조회 4,175
06-04-25 조회 4,040
06-03-23 조회 5,506
06-01-20 조회 4,077
06-01-04 조회 4,286
05-12-30 조회 4,161
05-12-21 조회 4,840
05-11-09 조회 4,048
05-11-09 조회 3,817
05-10-09 조회 3,467
05-09-21 조회 6,861
05-08-14 조회 4,344
05-08-04 조회 5,527
05-07-14 조회 4,590
05-06-15 조회 4,996
05-04-23 조회 4,576
05-04-20 조회 5,036
05-04-19 조회 1.1만
05-04-19 조회 6,000
05-03-15 조회 3,818
05-03-15 조회 4,260
05-03-13 조회 2,950
05-03-13 조회 3,461
05-03-13 조회 3,458
05-03-13 조회 2,757
05-03-13 조회 5,786
05-03-13 조회 5,416
05-03-13 조회 4,348
05-03-13 조회 4,646
05-03-13 조회 7,905
05-03-13 조회 4,405
05-03-13 조회 3,490
05-03-13 조회 3,485
05-03-13 조회 8,028
05-03-13 조회 5,493
05-03-13 조회 4,139
05-03-12 조회 3,790
05-03-12 조회 4,491
05-02-24 조회 4,638