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

首頁 > 開發 > PHP > 正文

PHP簡單分頁函數代碼總結

2024-05-04 23:06:48
字體:
來源:轉載
供稿:網友

在我做過這么多的php開發了我發現兩種分頁類型,一種分頁是直接把數據庫連接與分頁連接在了一起,另外一種分頁函數只有分頁的邏輯判斷并沒有數據庫的參與了,后者更好維護與重復使用一些,前者維護麻煩不好重復利用,下面我都給大家整理幾個例子.

例子一,這個分頁函數就有連接數據庫再查看,代碼不詳細解說了,注釋里有:

  1. <?php 
  2.   //page當前頁,num每頁的頁數 
  3.   $page=isset($_GET['page'])?intval($_GET['page']):1; 
  4.   $num=5; 
  5.   $conn = mysql_connect('127.0.0.1','root',''); 
  6.   if (!$conn) { 
  7.    die('Could not connect:'.mysql_error()); 
  8.   } 
  9.   mysql_select_db('shop'); 
  10.   //獲取記錄總數 
  11.   $total=mysql_num_rows(mysql_query("select * from user")); 
  12.   //計算頁數 
  13.   $pagenum=ceil($total/$num); 
  14.   //限制頁數不能超出范圍 
  15.   If($page>$pagenum || $page == 0){ 
  16.     Echo 'Error : Can Not Found The page.'
  17.     Exit
  18.   } 
  19.   //語句“Select * from table limit 0,10”從table表提取十條信息,0為起點,10為提取的數目 
  20.   //$offset為起點值,如當前頁為第一頁,每頁5條,起點即為0,同理當前為第二頁,起點將為5 
  21.   $offset=($page-1)*$num
  22.   $result=mysql_query("select * from user limit $offset,$num"); 
  23.   while($it=mysql_fetch_array($result)){ 
  24.     echo 'id:'.$it['id'].' name:'.$it['name'].'<br />'
  25.   } 
  26.   //顯示鏈接頁面切換鏈接,當前頁無鏈接 
  27.   for($i=1;$i<=$pagenum;$i++){ 
  28.     $show=($i!=$page)?"<a href='index.php?page=".$i."'>$i</a>":"<b>$i</b>"
  29.     echo $show." "
  30.   } 
  31.   echo $total.'條記錄,每頁5條,共'.$pagenum.'頁'
  32.    mysql_free_result($result); 
  33.   mysql_close($conn); 
  34. ?> 

例子二,直接的把分頁代碼邏輯提出來,重復利用比較好,代碼如下:

  1. <?php 
  2.   /* 
  3.     #函數:csPage 
  4.     #功能:返回頁面列表 
  5.   */ 
  6.   Function csPage($iPage,$aPage,$urlStart,$urlEnd){ 
  7.     $tmp = ""
  8.     if($iPage == 1 && $aPage == 1){ 
  9.       $tmp = "<strong> 1/1 </strong>"
  10.     }else
  11.       if($iPage == 1){ 
  12.         $tmp = "<span> |< </span><span> << </span>"
  13.       }else
  14.         $tmp = '<a title="首頁" href="' . $UrlStart . 1 . $urlEnd . '"> |< </a><a title="上一頁" href="' . $UrlStart . ($iPage-1) . $urlEnd . '"> << </a>'
  15.       } 
  16.       $tmp .= "<strong> " . $iPage . "/" . $aPage . " </strong>"
  17.       if($iPage == $aPage){ 
  18.         $tmp .= '<span> >> </span><span> >| </span>'
  19.       }else
  20.         $tmp .= '<a title="下一頁" href="' . $urlStart . ($iPage+1) . $urlEnd .' "> >> </a><a title="尾頁" href="' . $urlStart . $aPage . $urlEnd . '"> >| </a>'
  21.       } 
  22.     } 
  23.     return $tmp
  24.   } 
  25.   ?> 

總結一下:如果讓我們選擇可能我會選擇第二種方法這樣維護好實現方法簡單,第一種分頁適合初學者合適簡單但維護復雜.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长治县| 芦溪县| 遂溪县| 乌鲁木齐县| 海晏县| 天祝| 洛隆县| 名山县| 和静县| 祁东县| 鱼台县| 溆浦县| 凤冈县| 呼伦贝尔市| 双柏县| 信阳市| 潼南县| 龙口市| 长泰县| 云浮市| 宜宾县| 庆元县| 凉山| 青岛市| 桑日县| 准格尔旗| 怀宁县| 基隆市| 婺源县| 上思县| 凤阳县| 双牌县| 远安县| 阿勒泰市| 卓资县| 巨野县| 东阳市| 西乌珠穆沁旗| 华容县| 江北区| 理塘县|