테스트 사이트 - 개발 중인 베타 버전입니다

게시판 페이징을 다음페이지 클릭시 없는페이지로 이동 채택완료

탈환대 10년 전 조회 4,785


 

 

갤러리 페이징을 달았습니다. 이전 다음 화살표를 클릭하면 한페이지씩 이동하게 만들었습니다.

 

http://sir.co.kr/qa/71164?stx=%EA%B2%8C%EC%8B%9C%ED%8C%90+%ED%8E%98%EC%9D%B4%EC%A7%95+%EB%8B%A4%EC%9D%8C&sst=wr_num&unanswered=0&s_tag=">http://sir.co.kr/qa/71164?stx=%EA%B2%8C%EC%8B%9C%ED%8C%90+%ED%8E%98%EC%9D%B4%EC%A7%95+%EB%8B%A4%EC%9D%8C&sst=wr_num&unanswered=0&s_tag= 

 

이 글을 참고해서 $cur_page 로 이동은 잘 됩니다. 1페이지에서 이전을 눌러도 더이상 이동이 안되는데

마지막 페이지인 3 페이지에서 다음버튼을 누르면 4페이지로 가네요.. 4페이지는 아무것도 없어요

빈화면으로 나오네요

 

 

현재 lib common.lib.php 소스 입니다.

 

</p><p>// 한페이지에 보여줄 행, 현재페이지, 총페이지수, URL</p><p>function get_paging($write_pages, $cur_page, $total_page, $url, $add="")</p><p>{</p><p>    //$url = preg_replace('#&page=[0-9]*(&page=)$#', '$1', $url);</p><p>    $url = preg_replace('#&page=[0-9]*#', '', $url) . '&page=';</p><p> </p><p>    $str = '';</p><p>    /*if ($cur_page > 1) {</p><p>        $str .= '<a href="'.$url.'1'.$add.'" class="pg_page pg_start">처음</a>'.PHP_EOL;</p><p>    }*/</p><p> </p><p>    $start_page = ( ( (int)( ($cur_page - 1 ) / $write_pages ) ) * $write_pages ) + 1;</p><p>    $end_page = $start_page + $write_pages - 1;</p><p> </p><p>    if ($end_page >= $total_page) $end_page = $total_page;</p><p> </p><p>    $str .= '<a href="'.$url.($cur_page-1).$add.'" class="pg_page pg_prev">◀</a>'.PHP_EOL;</p><p> </p><p>    if ($total_page > 1) {</p><p>        for ($k=$start_page;$k<=$end_page;$k++) {</p><p>            if ($cur_page != $k)</p><p>                $str .= '<a href="'.$url.$k.$add.'" class="pg_page">'.$k.'<span class="sound_only">페이지</span></a>'.PHP_EOL;</p><p>            else</p><p>                $str .= '<span class="sound_only">열린</span><strong class="pg_current">'.$k.'</strong><span class="sound_only">페이지</span>'.PHP_EOL;</p><p>        }</p><p>    }</p><p> </p><p>    $str .= '<a href="'.$url.($cur_page+1).$add.'" class="pg_page pg_next">▶</a>'.PHP_EOL;</p><p> </p><p>    /*if ($cur_page < $total_page) {</p><p>        $str .= '<a href="'.$url.$total_page.$add.'" class="pg_page pg_end">맨끝</a>'.PHP_EOL;</p><p>    }*/</p><p> </p><p>    if ($str)</p><p>        return "<nav class=\"pg_wrap\"><span class=\"pg\">{$str}</span></nav>";</p><p>    else</p><p>        return "";</p><p>} </p><p>

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
격렬한저항

28번째 라인

</CODE></FONT></P>
<P><FONT face="Courier New"><CODE class="php variable">$str</CODE></FONT> <CODE class="php plain">.= </CODE><CODE class="php string">'<a href="'</CODE><CODE class="php plain">.</CODE><CODE class="php variable">$url</CODE><CODE class="php plain">.(</CODE><CODE class="php variable">$cur_page</CODE><CODE class="php plain">+1).</CODE><CODE class="php variable">$add</CODE><CODE class="php plain">.</CODE><CODE class="php string">'" class="pg_page pg_next">▶</a>'</CODE><CODE class="php plain">.PHP_EOL; </CODE>​</P>
<P>

마지막페이지일때는 안나오게 하면 되겠죠?

 

</CODE></FONT></P>
<P><FONT face="Courier New"><CODE class="php variable">if($cur_page>=$end_page)</CODE></FONT></P>
<P><FONT face="Courier New"><CODE class="php variable">{</CODE></FONT></P>
<P><FONT face="Courier New"><CODE class="php variable">$str</CODE></FONT> <CODE class="php plain">.= </CODE><CODE class="php string">'<a href="'</CODE><CODE class="php plain">.</CODE><CODE class="php variable">$url</CODE><CODE class="php plain">.(</CODE><CODE class="php variable">$cur_page</CODE><CODE class="php plain">+1).</CODE><CODE class="php variable">$add</CODE><CODE class="php plain">.</CODE><CODE class="php string">'" class="pg_page pg_next">▶</a>'</CODE><CODE class="php plain">.PHP_EOL; </CODE>​</P>
<P>}</P>
<P>

하면 되지 않을까요

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

관리자 > 게시판관리 > 게시판수정 > 게시판기본설정 > 카운트조정 

항목의 체크박스에 체크하시고 확인 버튼 클릭해 보세요.^^

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

탈환대
10년 전
답변 감사합니다. 해봤는데 또 4페이지 넘어가네요 ㅠㅠ

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인

© 2025 SIRSOFT. All rights reserved.