ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 그누보드 페이징 만들기
    PHP 2020. 6. 9. 14:38
    <?
       
    $where = array();
    if(!empty($year))
    {
        $where[] = " biz_operation_dtm >= '".$year."-01-01' AND biz_operation_dtm <= '".$year."-12-31' ";
    }
    
    if(!empty($lcns_sq))
    {
        $where[] = " biz_lcns_sq = '".$lcns_sq."' ";
    }
    
    if(!empty($area_code))
    {
        $where[] = " biz_area_code = '".$area_code."' ";
    }
    
    if(!empty($mb_area_gugundo))
    {
        $where[] = " biz_gugundo_code = '".$mb_area_gugundo."' ";
    }
    
    if(!empty($result_cash_1))
    {
        $where[] = " biz_result_cash_3 >= '".$result_cash_1."' ";
    }
    
    if(!empty($result_cash_2))
    {
        $where[] = " biz_result_cash_3 <= '".$result_cash_2."' ";
    }
    
    if(!empty($keyword))
    {
        if($f_filter == "all")
        {
            $where[] = " (biz_name LIKE '%".$keyword."%' OR biz_ceo_name LIKE '%".$keyword."%') ";
        }
        elseif($f_filter == "biz_name")
        {
            $where[] = " biz_name LIKE '%".$keyword."%' ";
        }
        elseif($f_filter == "biz_ceo_name")
        {
            $where[] = " biz_ceo_name LIKE '%".$keyword."%' ";
        }
    }
    
    if(count($where))
    {
        $sqlWhere = " WHERE ".implode(" AND ", $where);
    }
    
    
    
    $page_size = 10;
    
    if ($page < 1) $page = 1;
    
    $total_res = sql_fetch(" SELECT count(*) as cnt FROM g5_biz_list ".$sqlWhere );
    $total_count = $total_res['cnt'];
    
    $total_page = (int)($total_count/$page_size) + ($total_count%$page_size==0 ? 0 : 1);
    $page_start = $page_size * ( $page - 1 );
    
    $vnum = $total_count - (($page-1) * $page_size);
    
    $sql = " SELECT * FROM g5_biz_list ".$sqlWhere." limit $page_start, $page_size";
    
    $row = sql_query($sql);
    
    $link = "&searchFromType={$searchFromType}&area_code={$area_code}&mb_area_gugundo={$mb_area_gugundo}&result_cash_1={$result_cash_1}&result_cash_2={$result_cash_2}&f_filter={$f_filter}&keyword={$keyword}";
    
    <?php echo get_paging($config['cf_write_pages'], $page, $total_page, $_SERVER['SCRIPT_NAME']."?{$link}&amp;page="); ?>
    
    
    function get_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) . '&amp;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 "";
    }
    

    댓글

Designed by Tistory.