게시판 페이징 문제입니다.
본문
1. list.skin.php (스킨)
<?php echo $write_pages; ?>
2. list.php(보드폴더내)
$write_pages = get_paging(G5_IS_MOBILE ? $config['cf_mobile_pages'] : $config['cf_write_pages'], $page, $total_page, './board.php?bo_table='.$bo_table.$qstr.'&page=');
3. common.lib.php (lib 폴더내)
function get_paging($write_pages, $cur_page, $total_page, $url, $add="")
{
$url = preg_replace('#&page=[0-9]*#', '', $url) . '&page=';
$str = '';
if ($cur_page > 1) {
$str .= '<a href="'.$url.'1'.$add.'" class="pg_page pg_start">처음</a>'.PHP_EOL;
}
$start_page = ( ( (int)( ($cur_page - 1 ) / $write_pages ) ) * $write_pages ) + 1;
$end_page = $start_page + $write_pages - 1;
if ($end_page >= $total_page) $end_page = $total_page;
if ($start_page > 1) $str .= '<a href="'.$url.($start_page-1).$add.'" class="pg_page pg_prev">이전</a>'.PHP_EOL;
if ($total_page > 1) {
for ($k=$start_page;$k<=$end_page;$k++) {
if ($cur_page != $k)
$str .= '<a href="'.$url.$k.$add.'" class="pg_page">'.$k.'<span class="sound_only">페이지</span></a>'.PHP_EOL;
else
$str .= '<span class="sound_only">열린</span><strong class="pg_current">'.$k.'</strong><span class="sound_only">페이지</span>'.PHP_EOL;
}
}
if ($total_page > $end_page) $str .= '<a href="'.$url.($end_page+1).$add.'" class="pg_page pg_next">다음</a>'.PHP_EOL;
if ($cur_page < $total_page) {
$str .= '<a href="'.$url.$total_page.$add.'" class="pg_page pg_end">맨끝</a>'.PHP_EOL;
}
if ($str)
return "<nav class=\"pg_wrap\"><span class=\"pg\">{$str}</span></nav>";
else
return "";
}
/////////////////////////////////////////////////
이상과 같이 기본꺼 그대로 사용하는데 페이징 호출이 안되고 있습니다.
관리자페이지에서 목록수를 줄이고 늘리며 테스트도 해보고, 카운터조정도 해봤지만 당췌 나오질 않습니다.
get_paging 함수를 아예 불러오지 못하는것 같습니다.
고수님들 좀 도와주십시요~~
답변 4
$write_pages 위아래로
echo "a";
echo $write_pages;
echo "b";
이런식으로 출력해서 a,b 가 잘나오는지 먼저 보세요
페이지가 2페이지 이상 되어야 나옵니다.
게시물 수가 적어 한페이지에 모두 출력된 상태라면 페이지 번호는 나오지 않습니다.
function get_paging()<--이 함수 내에서 넘어온 변수 만들어지는 $str 변수 등을 출력해보세요
관심 감사합니다.
결국 안되어서
https://sir.kr/qa/138483?vpage=1#answer_138489
이쪽 참조하여 write_page 함수 대신에 별도 페이지 만들어서 인클루드 했습니다.휴~~
답변을 작성하시기 전에 로그인 해주세요.