get_paging 페이징함수 1페이지 일때 page변수 사용하지 않게 변경
페이지 정보
작성일 23-03-06 14:30
본문
// 한페이지에 보여줄 행, 현재페이지, 총페이지수, URL function get_paging($write_pages, $cur_page, $total_page, $url, $add="") { global $g5, $config, $default, $member, $is_admin, $is_member, $_cma_office_intranet_admin, $_SESSION, $_COOKIE, $_SERVER, $_REQUEST, $_POST, $_GET, $_FILES; global $cma_common_config, $_list_mode, $_common_menu_str_path; // 언어별 배너파일명 설정 if($g5['cma_lang_site_use'] == 'y') :// 다국어 사이트 사용 시(y,n) if($g5['lang'] != 'kr') : // 한국어가 아닐때 return get_cma_lang_get_paging($write_pages, $cur_page, $total_page, $url, $add); // 한페이지에 보여줄 행, 현재페이지, 총페이지수, URL : get_paging(() endif; endif; $add = trim($add); //$url = preg_replace('#&page=[0-9]*(&page=)$#', '$1', $url); $url = preg_replace('#(&)?page=[0-9]*#', '', $url); $url .= substr($url, -1) === '?' ? 'page=' : '&page='; $_1_page_url = preg_replace('#(&)?page=[0-9]*#', '', $url); // 1페이지 링크시 if(!$add) : if( substr($_1_page_url, -1) == '?') : // 마지막 문자열이 ? 일때 $_1_page_url = substr($_1_page_url, 0, -1); // 제일 마지막 문자열 제거 endif; endif; //echo $url.'<br />'; // echo $_1_page_url; $str = ''; if ($cur_page > 1) : $str .= '<a href="'.$_1_page_url.$add.'" class="pg_page pg_start">처음</a>'.PHP_EOL; endif; $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; endif; if ($start_page > 1) : $_prev_page = ($start_page-1); $_url_page = ($_prev_page == 1) ? $_1_page_url : $url.$_prev_page; // 1page이 경우 page를 사용하지 않음 $str .= ' <a href="'.$_url_page.$add.'" class="pg_page pg_prev">이전</a>'.PHP_EOL; endif; if ($total_page > 1) : for ($k=$start_page;$k<=$end_page;$k++) : $_url_page = ($k == 1) ? $_1_page_url : $url.$k; // 1page이 경우 page를 사용하지 않음 if ($cur_page != $k) : $str .= ' <a href="'.$_url_page.$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; endif; endfor; endif; if ($total_page > $end_page) : $str .= ' <a href="'.$url.($end_page+1).$add.'" class="pg_page pg_next">다음</a>'.PHP_EOL; endif; if ($cur_page < $total_page) : $str .= ' <a href="'.$url.$total_page.$add.'" class="pg_page pg_end">맨끝</a>'.PHP_EOL; endif; $view_tag = '<nav class="pg_wrap">'.PHP_EOL; $view_tag .= ' <span class="pg">'.PHP_EOL; $view_tag .= $str; $view_tag .= ' </span>'.PHP_EOL; $view_tag .= '</nav>'.PHP_EOL; if ($str) : return $view_tag; else : return ''; endif; }
추천 0 비추천 0
- 이전글 안드로이드 webview에서 팝업창 및 팝업창 닫기 23.03.09
- 다음글 안드로이드 웹뷰 CookieSyncManager 정확한 사용법 23.03.05