메뉴 건너뛰기

프로그램언어

2017.03.07 02:59

기본적인 페이징

조회 수 24849 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
<? 
# 
# 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]"; 

?> 


  1. No Image 07Mar
    by
    2017/03/07 Views 17001 

    php 내장함수

  2. No Image 07Mar
    by
    2017/03/07 Views 17080 

    www가 붙은 도메인과 안붙은 같은 도메인, 로그인 세션 유지

  3. No Image 07Mar
    by
    2017/03/07 Views 18629 

    PHP 날짜/시간 정리

  4. No Image 07Mar
    by
    2017/03/07 Views 18471 

    몫과 나머지 구하기

  5. No Image 07Mar
    by
    2017/03/07 Views 21127 

    체크박스, post 로 넘기고 받아서 다시 체크하기, checkbox

  6. No Image 07Mar
    by
    2017/03/07 Views 20061 

    파일 이름에서 확장자 추출마스터

  7. No Image 07Mar
    by
    2017/03/07 Views 17642 

    http://홈주소/?mode=xxx 하는방법

  8. No Image 07Mar
    by 조쉬
    2017/03/07 Views 24849 

    기본적인 페이징

  9. No Image 06Mar
    by
    2017/03/06 Views 18306 

    PHP 속도 테스트 20 가지

  10. POST, GET으로 배열값 받기(직렬화)

  11. No Image 06Mar
    by
    2017/03/06 Views 20181 

    파일 업로드 (중복처리)

  12. No Image 06Mar
    by
    2017/03/06 Views 28547 

    간단한 PHP 파일 업로드, 다운로드 구현

  13. No Image 06Mar
    by
    2017/03/06 Views 19370 

    다중 도메인에 따른 접속방법

  14. No Image 06Mar
    by
    2017/03/06 Views 18635 

    네이버 지도 API 연동 PHP 소스

  15. 게시판 페이징 기법과 개념

  16. No Image 06Mar
    by
    2017/03/06 Views 17589 

    PHP 도메인 이름이나 웹문서 주소 알아내기

  17. No Image 06Mar
    by
    2017/03/06 Views 17606 

    그누보드, 여분필드 사용팁

  18. No Image 06Mar
    by
    2017/03/06 Views 17471 

    엑셀(*.xls) 화일을 PHP에서 읽기

  19. No Image 06Mar
    by
    2017/03/06 Views 16707 

    PHP 날짜, 시간 관련 함수. date(), mktime()

  20. No Image 06Mar
    by
    2017/03/06 Views 18502 

    잡다한 php

Board Pagination Prev 1 ... 5 6 7 8 9 10 11 12 13 14 ... 17 Next
/ 17

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved