웹마스터 팁

<?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>
        ");
?>
함수 입니다. 게시판이 아니고 모듈이나 기타 프로그램을 만들때 사용하시면 됩니다.
페이지넘김 같은 경우 함수를 만들어서 사용하시는게 편하다는 생각입니다.




제목 글쓴이 날짜
외부프로그램(페이지)에서 zbxe 로그인 정보 연동하기 [33] file 도데군 2007.12.23
제로보드에서 로그인후 테크노트에서 로그인정보 사용하기 [4] JinHoHan 2007.12.26
플래쉬 테두리 없애기 [3] 부우우 2007.12.28
Parse error: parse error, unexpected '':'' in /home/hosting_users/xxx/www/xx/classes/template/TemplateHandler.class.php(341) : eval()''+ 'd code on line 14 에러에 대하여... 왕경태 2007.12.29
xe에 라이프팟 연동하기 [6] 가클 2007.12.30
게시판 별로 에디터의 옵션 설정하기 [6] 레드맨 2008.01.01
로그아웃 페이지가 심심한듯 보여서 이미지를 넣어봤습니다. [9] file moonsoo 2008.01.01
내 홈페이지에 구글 검색용 애드센스 달기 file RulruRalra 2008.01.01
홈페이지에 최근글 넣고 새창으로 띄우기 happyblog 2008.01.02
외부로그인-특정 페이지에 로그인창만 나타나게 하고 로그인하면 메인페이지로 이동하기 [11] 레드맨 2008.01.02
관리자 페이지 않나오게 하기 [1] Diver 2008.01.04
여러 서버에서 하나의 회원목록 관리&사용 [24] 화니군 2008.01.04
.htaccess 세팅 (index.html 없이 리다이렉션 구현) [2] :맥노턴 2008.01.04
홈페이지 전반에서 오른쪽 클릭 금지하기 [12] 팬더사촌 2008.01.08
아이프레임 리사이즈 모질라,익스플로러 사용가능하며 게시판 불러오기 [1] moonsoo 2008.01.11
홈페이지에 간단하게 뮤직플레이어와 악세사리 설치하기 file 푸른커튼 2008.01.12
VirtualPC로 IE6.0, IE7.0을 동시에 사용해서 홈피테스트하기 [2] file D.kim 2008.01.13
www가 붙는 도메인과 그렇지 않은 도메인 하나로 처리하기 [8] 똑디 2008.01.18
제로보드XE 외부페이지에 javascrip 삽입하기 [3] BlueGATE 2008.01.22
내용에서 [대기] 파일 구분하기Ⅱ [3] file moonsoo 2008.01.24