웹마스터 팁

<?php

        // 간단 구현 페이징

        function page_nav($total,$scale,$p_num,$page,$query)
        {
                global $PHP_SELF;

                $total_page = ceil($total/$scale);
                if (!$page) $page = 1;
                $page_list = ceil($page/$p_num)-1;
                
                // 페이지 리스트의 첫번째가 아닌 경우엔 [1]...[prev] 버튼을 생성한다.
               if ($page_list>0) 
    $navigation = "<a href='$PHP_SELF?page=1&$query'>[1]</a> ... "; 

$prev_page = ($page_list)*$p_num; 
$navigation .= "<a href='$PHP_SELF?page=$prev_page&$query'>[prev]</a>"; 
}

                // 페이지 목록 가운데 부분 출력
                $page_end=($page_list+1)*$p_num;
                if ($page_end>$total_page) $page_end=$total_page;

                for ($setpage=$page_list*$p_num+1;$setpage<=$page_end;$setpage++)
                {
                        if ($setpage==$page) {
                                $navigation .= "<b>[$setpage]</b>";
                        } else {
                                $navigation .= "<a href='$PHP_SELF?page=$setpage&$query'>[$setpage]</a> ";
                        }
                }

                // 페이지 목록 맨 끝이 $total_page 보다 작을 경우에만, [next]...[$total_page] 버튼을 생성한다.
                if ($page_end<$total_page) 
                {
                        $next_page = ($page_list+1)*$p_num+1;
                        $navigation .= "<a href='$PHP_SELF?page=$next_page&$query'>[next]</a> ";
                        $navigation .= "... <a href='$PHP_SELF?page=$total_page&$query'>[$total_page]</a>";
                }
        
                return $navigation;
        }
?>

적용하실때는 
 <div id="paging" >
<?php
include "page.php";
        $total_data=총 데이터수;
       $num_per_page=페이지당 목록수;
        $page_per_list=페이징 단위;
        $query="mid=".$mid;

        $nav=page_nav($total_data,$num_per_page,$page_per_list,$page,$query);

        echo $nav;
        echo ("<form action=$PHP_SELF>
        <input name=mid type=hidden value='".$mid."'>
                        페이지 : <input type=text name=page size=4>
                        <input type=submit value='이동'></form>
        ");
?>
함수 입니다. 게시판이 아니고 모듈이나 기타 프로그램을 만들때 사용하시면 됩니다.
페이지넘김 같은 경우 함수를 만들어서 사용하시는게 편하다는 생각입니다.




제목 글쓴이 날짜
게시판 목록을 확장 변수로 정렬하기 [5] 대암지기 2008.10.10
확장변수 별로 작성 및 열람 권한 설정하기 [7] 대암지기 2008.10.11
통합검색에서 확장변수 검색하기 [5] StyleD 2008.10.12
제로보드XE가입 -> 트랙자동가입 기능 개돌 2008.10.14
진행 표시줄에 떠다니는 글 넣기 [2] 부안프로그래밍 2008.10.14
UTF-8에서 호환되는 사랑비 BGM 올립니다. [8] file 로로아 2008.10.15
제로보드(zbxe) 설치 후 로그인 안되는 문제. [3] sophistlv.myid.net 2008.10.15
게시글 등록시 ''제목색깔''과 ''제목굵게'' 기능을 일반 사용자들에게도 주자. [5] 비나무 2008.10.15
zbXE 1.0.6 일본어 팩 입니다~ [8] file 쿠로쿠마 2008.10.15
꼬리표(태그) 목록 출력 위젯을 전체게시판에 대응하도록 수정하기 [1] 뽀연짱 2008.10.15
자체 서버에서 제로보드 인스톨하실때 계속 초기화면 가시는 분을 위한 팁!!! file ♡바다.. 2008.10.16
cafe24사용자중 페이지에서 위젯편집시 자바스크립트 에러나시는 분들 [8] 팔공산 2008.10.17
IE의 특정 도메인 인터넷 임시 파일 Cache만 삭제하기 [3] NetEagle 2008.10.22
단일 Windows PC에 다중 버전 IE 설치하기 [5] NetEagle 2008.10.22
첨부파일 문제땜에 고생하는 분들께 [8] 좀비이 2008.10.23
개인 웹서버 백업 및 게시물 등록 날짜 수정 방법 [10] file eunbini 2008.10.24
카페24 계정 사용 중에 제로보드XE 로그인 오류가 날 때 [1] vltm 2008.10.24
1.0.6 업데이트 후 링크 이미지 썸네일 문제 임시해결방법 [4] 라조 2008.10.27
[해결됨]첨부파일 등록이 안될때 (플래시 플레이어 버전문제) [29] [1] file 똑디 2008.10.27
운영자, 특정레벨이하 사진(이미지) 우클릭 금지 [7] S K Y 2008.10.27