国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

PHP實現分頁:文本分頁和數字分頁

2020-03-22 18:16:38
字體:
來源:轉載
供稿:網友
  • 最近,在項目中要用到分頁。分頁功能是經常使用的一個功能,所以,對其以函數形式進行了封裝。

    // 分頁分裝/***   $pageType   分頁類型 1是數字分頁  2是文本分頁*  可以將$pageTotal,$page,$total等數據作為參數傳遞,或者在paging作為html' target='_blank'>全局變量(推薦)*/function paging($pageType){    global $pageTotal,$page,$total;    if($pageType == 1)    {        echo '<div id="pagenum">';            echo'<ul>';                for($i=0; $i < $pageTotal; $i++)                {                     if($page == ($i+1))                    {                        echo '<li><a href="blogfriends.php?page='.($i+1).'" class="selected">'.($i+1).'</a></li>';                    }                    else                    {                        echo '<li><a href="blogfriends.php?page='.($i+1).'">'.($i+1).'</a></li>';                    }                }            echo'</ul>';        echo'</div>';    }    else if($pageType == 2)    {        echo '<div id="pagetext">';            echo '<ul>';                echo '<li>'.$page.'/'.$pageTotal.'頁 | </li>';                echo '<li>共有<strong>'.$total .'</strong>個會員 | </li>';                    // 第一頁                    if($page == 1)                    {                        echo '<li>首頁 | </li>';                        echo '<li>上一頁 | </li>';                    }                    else                    {                        // $_SERVER["SCRIPT_NAME"]獲取當前的腳本名字,方便移植                        // 也可以自定義常量,常量值和腳本文件名一致                        echo '<li><a href="'.$_SERVER["SCRIPT_NAME"].'">首頁 </a>| </li>';                        echo '<li><a href="'.$_SERVER["SCRIPT_NAME"].'?page='.($page - 1).'">上一頁 </a>| </li>';                    }                    // 最后一頁                    if($page == $pageTotal)                    {                        echo '<li>下一頁 | </li>';                        echo '<li>尾頁 | </li>';                    }                    else                    {                        echo '<li><a href="'.$_SERVER["SCRIPT_NAME"].'?page='.($page + 1).'">下一頁 </a>| </li>';                        echo '<li><a href="'.$_SERVER["SCRIPT_NAME"].'?page='.($pageTotal).'">尾頁 </a>| </li>';                    }                    echo '</ul>';        echo '</div>';    }}

    參數解釋:

    $pageTotal是總頁數,$page是當前頁,$total是從數據庫中獲取的數據總數;

    為了簡化,將參數全部封裝

    // 分頁參數分裝/***   $sql   可以 獲取數據總數的一個sql語句*  $size  每一頁顯示條數*/function pageParam($sql,$size){    // 將所有涉及的參數設置全局變量    // $pagestart  某一頁從哪里開始    // $total  總記錄數   $page  某一頁  $pageTotal  總頁數    global $pagestart,$pagesize,$total,$page,$pageTotal;    $pagesize = $size;    // 獲取數據總數    $total = mysql_num_rows(queryDB($sql));    // 錯誤處理,先判斷是否存在    if(isset($_GET['page']))    {        // 具體某一頁        $page = $_GET['page'];        // 判斷是否為空(0是空)/小于0/是否是數字        if(empty($page) || $page < 0 || !is_numeric($page))        {            $page = 1;        }        else        {            $page = intval($page);  //取整,防止小數出現        }            }    else    {        // 初始化顯示第1頁        $page = 1;    }    // 數據庫清零    if($total == 0)    {        // 設置為1        $pageTotal = 1;    }    else    {        // 分頁的總頁數(進一取整處理)        $pageTotal = ceil($total / $pagesize);    }    // 頁數大于總頁碼$total    if($page > $pageTotal)    {        $page = $pageTotal;    }    // 當頁從某一條記錄開始    $pagestart = ($page - 1) * $pagesize;}

    參數解釋:

    $pagestart是當頁從某一條記錄開始,$pagesize是每頁顯示的記錄數

    在使用中,先調用pageParam,再調用paging

    /***  第一個  可以 獲取數據總數的一個sql語句*  第二個  每一頁顯示條數*/pageParam("select userid from user",2);
    <?php     // 分頁類型 1是數字分頁  2是文本分頁      paging(2);?>    

    調用的位置根據具體情況選擇,文本分頁如下:

    <?php        // 分頁類型 1是數字分頁  2是文本分頁        paging(1); ?>    

    數字分頁如下:

    樣式自行調整。

    PHP編程

    鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

  • 發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 监利县| 溆浦县| 泗阳县| 灵丘县| 临夏市| 邳州市| 滦平县| 平凉市| 西乌珠穆沁旗| 双城市| 文山县| 石城县| 色达县| 赣州市| 曲阜市| 西青区| 张北县| 福海县| 乐山市| 八宿县| 澳门| 新闻| 绍兴市| 天峨县| 满洲里市| 南平市| 灵石县| 原阳县| 尖扎县| 保亭| 兰西县| 桓台县| 徐州市| 大邑县| 板桥市| 当雄县| 莱西市| 烟台市| 专栏| 孟村| 陆河县|