댓글 페이징 이전 이후 버튼

댓글 페이징 이전 이후 버튼

QA

댓글 페이징 이전 이후 버튼

본문

https://sir.kr/g5_tip/9995

php를 잘 모르는 초보입니다 이 팁 보고 따라해서 댓글에 페이징 추가까지는 완성했는데요

댓글이 몇백개가 넘어가니까 페이징 숫자가 무한정 늘어나서요  

가능하면 일반적인 게시판 페이징처럼 댓글에도 보이게 하고 싶은데요 

 

3044567377_1643267540.1068.png

댓글수가 많아지면 이렇게 미리 정해놓은 특정 페이지 숫자외에

<<이전 이후>> 버튼 추가하는 팁 아시는분 계실까요?

 

 

 

이 질문에 댓글 쓰기 :

답변 1

lib/common.lib.php에

get_paging()

함수 참고하시면 됩니다.


// 코멘트 페이징을 위해 추가
function get_comment_paging($write_pages, $cur_page, $total_page, $url, $add="") 
{ 
    //$url = preg_replace('#&amp;page=[0-9]*(&amp;page=)$#', '$1', $url); 
    $url = preg_replace('#&amp;page=[0-9]*#', '', $url) . ''; 

    $str = ''; 
    if ($cur_page > 1) { 
        $str .= '<a href="'.$url.'1'.$add.'#CommentTop" 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.'#CommentTop" 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.'#CommentTop" 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.'#CommentTop" class="pg_page pg_next">다음</a>'.PHP_EOL; 

    if ($cur_page < $total_page) { 
        $str .= '<a href="'.$url.$total_page.$add.'#CommentTop" class="pg_page pg_end">맨끝</a>'.PHP_EOL; 
    } 

    if ($str) 
        return "<nav class=\"pg_wrap\"><span class=\"pg\">{$str}</span></nav>"; 
    else 
        return ""; 
}


이렇게 common.lib.php에 추가를 해줬는데요 사용중인 스킨의 view_comment.skin.php에서 어떻게 불러와야 할지 모르겠어요 <?php echo get_comment_paging 으로 불러와도 안되네요ㅠㅠ

get_paging() 사용법은
bbs/list.php에서
$write_pages = get_paging(G5_IS_MOBILE ? $config['cf_mobile_pages'] : $config['cf_write_pages'], $page, $total_page, get_pretty_url($bo_table, '', $qstr.'&amp;page='));
이 부분을 참고하세요.

답변을 작성하시기 전에 로그인 해주세요.
전체 59,559
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT