zoukankan      html  css  js  c++  java
  • phpcms v9 自定义分页 带下拉跳转

    <?php
    
    function new_pages($num, $curr_page, $perpage = 20, $urlrule = '', $array = array(),$setpages = 10) {
            if(defined('URLRULE') && $urlrule == '') {
                    $urlrule = URLRULE;
                    $array = $GLOBALS['URL_ARRAY'];
            } elseif($urlrule == '') {
                    $urlrule = url_par('page={$page}');
            }
            $multipage = '';
            if($num > $perpage) {
                    $page = $setpages+1;
                    $offset = ceil($setpages/2-1);
                    $pages = ceil($num / $perpage);
                    if (defined('IN_ADMIN') && !defined('PAGES')) define('PAGES', $pages);
                    $from = $curr_page - $offset;
                    $to = $curr_page + $offset;
                    $more = 0;
                    if($page >= $pages) {
                            $from = 2;
                            $to = $pages-1;
                    } else {
                            if($from <= 1) {
                                    $to = $page-1;
                                    $from = 2;
                            }  elseif($to >= $pages) {
                                    $from = $pages-($page-2);
                                    $to = $pages-1;
                            }
                            $more = 1;
                    }
    
                    // 如果总页数大于1才显示当前页码信息等。
                    if ($pages > 1)
                    {   
                            
                            $multipage .= '<p>共 '.$num.' 条 每页显示 '.$perpage.' 条 </p>';
                            $multipage .= '<ul>';
                            $multipage .= '<li>';
                            // 首页。
                            $multipage .= '<a href="'.pageurl($urlrule, 1, $array).'">[首页]</a>';
                            $multipage .= '</li>';
                    }
                   
                    if($curr_page>0) {
                            $multipage .= ' <li><a href="'.pageurl($urlrule, $curr_page-1, $array).'" >[上一页]</a></li>';
                            if($curr_page==1) {
                                    $multipage .= ' <li><span>1</span></li>';
                            } elseif($curr_page>6 && $more) {
                                    $multipage .= ' <li><a href="'.pageurl($urlrule, 1, $array).'">1</a>..</li>';
                            } else {
                                    $multipage .= ' <li><a href="'.pageurl($urlrule, 1, $array).'">1</a></li>';
                            }
                    }
                    for($i = $from; $i <= $to; $i++) {
                            if($i != $curr_page) {
                                    $multipage .= ' <li><a href="'.pageurl($urlrule, $i, $array).'">'.$i.'</a></li>';
                            } else {
                                    $multipage .= ' <li><span>'.$i.'</span></li>';
                            }
                    }
                    if($curr_page<$pages) {
                            if($curr_page<$pages-5 && $more) {
                                    $multipage .= ' <li>..<a href="'.pageurl($urlrule, $pages, $array).'">'.$pages.'</a> <a href="'.pageurl($urlrule, $curr_page+1, $array).'" >[下一页]</a></li>';
                            } else {
                                    $multipage .= ' <li><a href="'.pageurl($urlrule, $pages, $array).'">'.$pages.'</a> <a href="'.pageurl($urlrule, $curr_page+1, $array).'" >[下一页]</a></li>';
                            }
                    } elseif($curr_page==$pages) {
                            $multipage .= ' <li><span>'.$pages.'</span> <a href="'.pageurl($urlrule, $curr_page, $array).'" >下一页</a></li>';
                    } else {
                            $multipage .= ' <li><a href="'.pageurl($urlrule, $pages, $array).'">'.$pages.'</a> <a href="'.pageurl($urlrule, $curr_page+1, $array).'" >[下一页]</a></li>';
                    }
            }
            $str = http_build_query($_GET);
            $ppp=explode(page,$str);
            // 如果总页数大于1才显示“最后一页”。
            if ($pages > 1)
            {   
                   
            
                    $multipage .= ' <li><a href="'.pageurl($urlrule, $pages, $array).'">[尾页]</a></li>';
                    $multipage .=' <li>'.$curr_page.'/'.$pages.'</li>';
                    $multipage .= ' <li><select>';
                                    $multipage .= "<option value='0'>跳转到</option>";
                                    for($i=1; $i<=$pages; $i++)
                                    {
                                           
                                            $multipage .= "<option value='index.php?$ppp[0]&page=$i'>第$i 页</option>";        
                                    }
               $multipage .= '</select></li> ';
               
                    $multipage .= '</ul>';
            }
            return $multipage;
    }
    
    ?>
    http://bbs.phpcms.cn/thread-728832-1-1.html
  • 相关阅读:
    Activity 之使用
    Activity 之生命周期
    Activity 关于生命周期一些问题的实践验证
    深入理解Java虚拟机-第1章-走进Java-读书笔记
    代码整洁之道-第11章-系统-读书笔记
    代码整洁之道-第10章-类-读书笔记
    代码整洁之道-第9章-单元测试-读书笔记
    代码整洁之道-第8章-边界-读书笔记
    代码整洁之道-第7章-错误处理-读书笔记
    华为交换机做端口流量统计
  • 原文地址:https://www.cnblogs.com/wawahaha/p/3581277.html
Copyright © 2011-2022 走看看