Example #1
0
 /**
  * 筛选功能测试
  */
 function shaixuan()
 {
     load_function('content', 'content');
     //type = 套餐类别,area = 区域,city=城市,st=排序类型,asc=降序,升序  0升序,1降序
     //$linkurl = "index.php?m=demo&f=test&v=shaixuan&page=1&pinpai=1&renqun=1&type=2&price=100_200&area=2&tese=1_2_3&st=0&asc=1";
     $urlrule = 'index.php?m=demo&f=test&v=shaixuan&pinpai={$pinpai}&renqun={$renqun}&type={$type}&price={$price}&area={$area}&tese={$tese}&st={$st}&asc={$asc}&page={$page}';
     $_POST['page_urlrule'] = 'tuan-{$pinpai}-{$renqun}-{$type}-{$price}-{$area}-{$tese}-{$st}-{$asc}-{$page}.html';
     $page_fields = array();
     $page_fields['pinpai'] = 2;
     $page_fields['renqun'] = 3;
     $page_fields['type'] = 4;
     $page_fields['price'] = '100_200';
     $page_fields['area'] = 5;
     $page_fields['tese'] = '1_2_3';
     $page_fields['st'] = '6';
     $page_fields['asc'] = 0;
     echo _pageurl($_POST['page_urlrule'], 2, $page_fields);
     echo "<br>";
     $_POST['page_fields'] = $page_fields;
     echo filter('pinpai', '88');
     echo "<br>";
     echo filter('renqun', '55');
 }
Example #2
0
/**
 * 分页函数
 *
 * @param $num          信息总数
 * @param $current_page 当前分页
 * @param $pagesize     每页显示数
 * @param $urlrule      URL规则
 * @param $variables    url规则替换变量
 * @param $limit        显示分页数列
 * @return 分页
 */
function pages($num, $current_page, $pagesize = 20, $urlrule = '', $variables = array(), $limit = 10)
{
    $output = '';
    $num = intval($num);
    $pagesize = intval($pagesize);
    $maxpage = ceil($num / $pagesize);
    if ($current_page > $maxpage) {
        $current_page = $maxpage;
    }
    if ($urlrule != '' && isset($_GET['_variables'])) {
        $urlrule = $_GET['_variables'];
    } elseif ($urlrule == '') {
        $par = 'page={$page}';
        $url = URL();
        $pos = strpos($url, '?');
        if ($pos === FALSE) {
            $url .= '?' . $par;
        } else {
            $querystring = substr(strstr($url, '?'), 1);
            parse_str($querystring, $pars);
            $query_array = array();
            foreach ($pars as $k => $v) {
                if ($k != 'page') {
                    $query_array[$k] = $v;
                }
            }
            $querystring = http_build_query($query_array) . '&' . $par;
            $urlrule = substr($url, 0, $pos) . '?' . $querystring;
        }
    }
    //上一页
    $pageup = max($current_page - 1, 1);
    $output .= '<li title="按住向左方向键 向前翻页"><a href="' . _pageurl($urlrule, $pageup, $variables) . '">&lt;</a></li>';
    //第一页
    $active = '';
    if ($current_page == 1) {
        $active = 'class="active"';
    }
    $output .= '<li><a ' . $active . ' href="' . _pageurl($urlrule, 1, $variables) . '">1</a></li>';
    $difference = $limit + 1;
    $difference2 = ceil($limit / 2 - 1);
    $startpage = $current_page - $difference2;
    $endpage = $current_page + $difference2;
    if ($difference >= $maxpage) {
        $startpage = 2;
        $endpage = $maxpage - 1;
    } else {
        if ($startpage <= 1) {
            $endpage = $difference - 1;
            $startpage = 2;
        } elseif ($endpage >= $maxpage) {
            $startpage = $maxpage - ($difference - 2);
            $endpage = $maxpage - 1;
        }
        if ($current_page <= $difference2 + 1) {
            $endpage += 1;
        }
        if ($maxpage - $current_page <= $difference2) {
            $startpage -= 1;
        }
    }
    for ($i = $startpage; $i <= $endpage; $i++) {
        $active = '';
        if ($current_page == $i) {
            $active = 'class="active"';
        }
        $output .= '<li><a href="' . _pageurl($urlrule, $i, $variables) . '" ' . $active . '>' . $i . '</a></li>';
    }
    //最后一页
    if ($maxpage > 1) {
        $active = '';
        if ($current_page == $maxpage) {
            $active = 'class="active"';
        }
        $output .= '<li><a ' . $active . ' href="' . _pageurl($urlrule, $maxpage, $variables) . '">' . $maxpage . '</a></li>';
    }
    //下一页
    $pagedown = $current_page + 1;
    if ($pagedown >= $maxpage) {
        $pagedown = $maxpage;
    }
    //热键
    $output .= '<input type="hidden" id="page-up" value="' . _pageurl($urlrule, $pageup, $variables) . '">';
    $output .= '<input type="hidden" id="page-next" value="' . _pageurl($urlrule, $pagedown, $variables) . '">';
    $output .= '<script>$(this).focus();</script>';
    $output .= '<li title="按住向右方向键 向后翻页"><a href="' . _pageurl($urlrule, $pagedown, $variables) . '">&gt;</a></li>';
    return $output;
}
Example #3
0
/**
 * @param $field 要筛选的字段
 * @param $value 值
 */
function filter($field, $value)
{
    $page_fields = $_POST['page_fields'];
    $page_fields[$field] = $value;
    return _pageurl($_POST['page_urlrule'], 1, $page_fields);
}