204 lines
9.5 KiB
PHP
204 lines
9.5 KiB
PHP
<?php
|
|
|
|
// 페이징 클래스.
|
|
//
|
|
// 인자값
|
|
// 1. 구분키 (리스트가 한 개일 경운 대부분 page 겠죠?)
|
|
// 1. 총레코드 갯수($total_record),
|
|
// 2. 한 페이지당 출력 레코드 수($rnum_per_page).
|
|
// 3. 한 블럭당 출력 페이지 수($num_list_link).
|
|
// 4. 현재 페이지($page).
|
|
// 5. 페이지 넘길때 넘어갈 값들($page_string).
|
|
|
|
// $current_page_color // 현재 페이지 색.
|
|
// $other_page_color // 그 외 페이지 색.
|
|
// $block_color // 블럭 색.
|
|
// $direct_color // 첫 페이지, 마지막 페이지 바로가기 색.
|
|
// $virtual_link_color // 가상 링크 색.
|
|
|
|
|
|
|
|
// 호출예.
|
|
// $page_string = "&sdate=$sdate&state=$state&yn=$yn&sother=$sother&condition=$condition";
|
|
// $paging = new PAGE('page',$total_record,$rnum_per_page,$num_list_link,$page,$page_string,'red','','','336699','');
|
|
|
|
|
|
class PAGE_ADM {
|
|
|
|
var $code;
|
|
var $rows;
|
|
var $pagesize;
|
|
var $listsize;
|
|
var $startpage;
|
|
var $totalpage;
|
|
var $page;
|
|
|
|
|
|
function __construct($code,$rows,$pagesize,$listsize,$page,$page_string,$color1,$color2,$color3,$color4,$color5) {
|
|
|
|
$this->code = $code;
|
|
$this->rows = $rows;
|
|
$this->pagesize = $pagesize;
|
|
$this->listsize = $listsize;
|
|
$this->page = $page;
|
|
$this->page_string = $page_string;
|
|
//echo"$page_string";
|
|
|
|
if($color1){$this->color1 = $color1;}
|
|
if($color1){$this->color2 = $color2;}
|
|
if($color1){$this->color3 = $color3;}
|
|
if($color1){$this->color4 = $color4;}
|
|
if($color1){$this->color5 = $color5;}
|
|
|
|
if ($rows % $pagesize) {
|
|
$this->totalpage = ceil($rows / $pagesize);
|
|
|
|
} else {
|
|
$this->totalpage = $rows / $pagesize;
|
|
|
|
}
|
|
|
|
$this->paging($this->code,$this->rows,$this->pagesize,$this->listsize,$this->page,$this->totalpage,$this->page_string,$this->color1,$this->color2,$this->color3,$this->color4,$this->color5);
|
|
|
|
//$this->paging($rows,$pagesize,$listsize,$page,$totalpage,$page_string,$color1,$color2,$color3,$color4,$color5);
|
|
|
|
} // end of function PAGE
|
|
|
|
|
|
function paging($code,$total_record,$rnum_per_page,$num_list_link,$page,$totalpage,$page_string,$current_page_color,$other_page_color,$block_color,$direct_color,$virtual_link_color) {
|
|
|
|
// $current_page_color // 현재 페이지 색.
|
|
// $other_page_color // 그 외 페이지 색.
|
|
// $block_color // 블럭 색.
|
|
// $direct_color // 첫 페이지, 마지막 페이지 바로가기 색.
|
|
// $virtual_link_color // 가상 링크 색.
|
|
|
|
if(!$virtual_link_color){$virtual_link_color="#AAAAAA";}
|
|
|
|
|
|
$first_num_per_page = $rnum_per_page * ($page-1); // 각 페이지의 첫번째 레코드 번호
|
|
$last_num_per_page = $rnum_per_page * $page; // 각 페이지의 임시 마지막 레코드 번호
|
|
|
|
|
|
$block = ceil($page/$num_list_link); // 현재 블럭.
|
|
|
|
$total_block = ceil($totalpage / $num_list_link); // 총 블럭 수
|
|
|
|
$frist_page_per_block = $num_list_link*($block-1); // 각 블럭당 첫 페이지
|
|
$last_page_per_block = $num_list_link*$block; // 각 블럭당 임시 마지막 페이지
|
|
|
|
|
|
|
|
// 첫 페이지 바로가기
|
|
|
|
//$go_first_page_shape = "<b>[First]</b>"; // <<---- #### 첫 페이지 바로가기 모양 설정. (활성)
|
|
//$go_first_page_shape2 = "<b>[First]</b>"; // <<---- #### 첫 페이지 바로가기 모양 설정. (비활성)
|
|
|
|
$go_first_page_shape = "<img src='/admin/images/board/navarrow_left2.jpg' border=0 align=top alt='First Page' hspace=2>";
|
|
$go_first_page_shape2 = "<img src='/admin/images/board/navarrow_left2.jpg' border=0 align=top alt='First 5 Page' hspace=2>";
|
|
|
|
if ($page!=1){
|
|
//echo "<a href='" . $_SERVER['PHP_SELF'] . "?$code=1&$page_string'>";
|
|
//echo "<font color='$direct_color' size=2>$go_first_page_shape</font>";
|
|
//echo "</a>";
|
|
}else {
|
|
//echo ("<font color='$virtual_link_color' size=2>$go_first_page_shape2</font>");
|
|
}
|
|
|
|
//echo " ";
|
|
|
|
|
|
|
|
// 이전 블럭 바로가기
|
|
|
|
$go_pre_block_shape = "<b>[Pre $num_list_link]</b>"; // <<---- #### 이전 블럭 바로가기 모양 설정. (활성)
|
|
$go_pre_block_shape2 = "<b>[Pre $num_list_link]</b>"; // <<---- #### 이전 블럭 바로가기 모양 설정. (비활성)
|
|
|
|
if ($block>1){
|
|
$a = $frist_page_per_block;
|
|
//echo "<a href='" . $_SERVER['PHP_SELF'] . "?$code=$a&$page_string'>";
|
|
//echo "<font color='$block_color'>$go_pre_block_shape</font>";
|
|
//echo "<img src='/admin/images/board/navarrow_left.jpg' border=0 align=top alt='Previous 5 Page' hspace=2>";
|
|
//echo "</a>";
|
|
} else {
|
|
//echo ("<font color='$virtual_link_color'>$go_pre_block_shape2</font>");
|
|
//echo "<img src='/admin/images/board/navarrow_left.jpg' border=0 align=top alt='Previous 5 Page' hspace=2>";
|
|
}
|
|
|
|
echo " ";
|
|
|
|
|
|
|
|
|
|
// 블럭내 페이지 바로가기
|
|
|
|
$b=$frist_page_per_block+1;
|
|
|
|
for ($b;$b<=$last_page_per_block;$b++){
|
|
|
|
// 현재 페이지.
|
|
if($b==$page){
|
|
echo "<font color='$current_page_color' size=2><b>[$b]</b></font>";
|
|
|
|
// 가상 페이지. ->> 페이지는 없으나 그냥 화면에만 표시.
|
|
}elseif($b>$totalpage){
|
|
echo "<font color='$virtual_link_color' size=2>[$b]</font>";
|
|
|
|
// 그외 페이지.
|
|
}else{
|
|
echo "<a href='" . $_SERVER['PHP_SELF'] . "?$code=$b&$page_string'>";
|
|
echo "<font color='$other_page_color' size=2>[".$b."]</font>";
|
|
echo "</a>";
|
|
|
|
}
|
|
if ($b%30==0) echo "<br>";
|
|
|
|
|
|
}
|
|
|
|
echo " ";
|
|
|
|
|
|
|
|
// 다음 블럭 바로가기
|
|
|
|
$go_next_block_shape = "<b>[Next $num_list_link]</b>"; // <<---- #### 이전 블럭 바로가기 모양 설정. (활성)
|
|
$go_next_block_shape2 = "<b>[Next $num_list_link]</b>"; // <<---- #### 이전 블럭 바로가기 모양 설정. (비활성)
|
|
|
|
if ($block<$total_block){
|
|
$c = $last_page_per_block+1;
|
|
//echo "<a href='" . $_SERVER['PHP_SELF'] . "?$code=$c&$page_string'>";
|
|
//echo "<font color='$block_color'>$go_next_block_shape</font>";
|
|
//echo "<img src='/admin/images/board/navarrow_right.jpg' border=0 align=top alt='Previous 5 Page' hspace=2>";
|
|
//echo "</a>";
|
|
} else {
|
|
//echo ("<font color='$virtual_link_color'>$go_next_block_shape2</font>");
|
|
//echo "<img src='/admin/images/board/navarrow_right.jpg' border=0 align=top alt='Previous 5 Page' hspace=2>";
|
|
}
|
|
|
|
//echo " ";
|
|
|
|
|
|
|
|
// 끝 페이지 바로가기
|
|
|
|
//$go_last_page_shape = "<b>[Last]</b>"; // <<---- #### 끝 페이지 바로가기 모양 설정. (활성)
|
|
//$go_last_page_shape2 = "<b>[Last]</b>"; // <<---- #### 끝 페이지 바로가기 모양 설정. (비활성)
|
|
|
|
$go_last_page_shape = "<img src='/admin/images/board/navarrow_right2.jpg' border=0 align=top alt='Last Page' hspace=2>";
|
|
$go_last_page_shape2 = "<img src='/admin/images/board/navarrow_right2.jpg' border=0 align=top alt='Last Page' hspace=2>";
|
|
|
|
if ($page!=$totalpage) {
|
|
//echo "<a href='" . $_SERVER['PHP_SELF'] . "?$code=$totalpage&$page_string'>";
|
|
//echo "<font color='$direct_color' size=2>$go_last_page_shape</font>";
|
|
//echo "</a>";
|
|
} else {
|
|
//echo ("<font color='$virtual_link_color' size=2>$go_last_page_shape2</font>");
|
|
}
|
|
|
|
|
|
} // end of function paging
|
|
|
|
} // end of class PAGE
|
|
|
|
?>
|