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

首頁 > 開發 > PHP > 正文

php分頁實例程序函數

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

在php中分頁是我們開發中必須要用到的東西,但在覺得在php分頁比在asp中方便了很多,下面我來給各位同學詳細介紹人幾個不錯的php分頁類吧,這是我自己寫的一個php分頁實例,代碼如下:

  1. <html> 
  2. <head> 
  3.     <title>簡單的PHP分頁程序</title> 
  4. </head> 
  5. <body> 
  6. <?php 
  7.     //建立連接數據庫 
  8.     $linkID=@mysql_connect("Vevb.com","root",""or die("you could notconnect mysql"); 
  9.     //連接的數據庫名稱 
  10.     @mysql_select_db("ceshi"or die("could not select database!"); 
  11.     //取得記錄總數 
  12.  
  13.     $query="SELECT count(*) FROM user"
  14.     $rs = mysql_query($query); 
  15.     $myrows=mysql_fetch_array($rs); 
  16.     $numrows=$myrows[0]; 
  17.     //設定每一頁顯示的記錄數 
  18.     $pagesize = 1; 
  19.     //計算總頁數 
  20.     $pages=intval($numrows/$pagesize); 
  21.     if($numrows%$pagesize
  22.     $pages++; 
  23.     //設置頁數 
  24.     if(isset($_POST['page'])) 
  25.        $page=intval($_POST['page']); 
  26.     else
  27.          $page = 1; //沒有頁數則顯示第一頁; 
  28.         } 
  29.     //計算記錄偏移量 
  30.     $offset = ($page-1)*$pagesize
  31.     //讀取指定的記錄數 
  32.     $query1="select * from user limit $offset,$pagesize"
  33.     $rs = mysql_query($query1); 
  34.     if($myrows=mysql_fetch_array($rs)) 
  35.     { 
  36.        $i = 0;    
  37. ?> 
  38. <table width="80%" border="1"
  39.     <tr> 
  40.         <td width="50%">用戶名</td> 
  41.         <td width="50%">密碼</td> 
  42.     </tr> 
  43.     <?php 
  44.         do
  45.             $i++; 
  46.     ?> 
  47.     <tr> 
  48.         <td width="50%"><?php echo $myrows["username"] ?></td> 
  49.         <td width="50%"><?php echo $myrows["password"] ?></td> 
  50.     </tr> 
  51.     <?php 
  52.         } 
  53.         while($myrows=mysql_fetch_array($rs)); 
  54.         echo "</table>"
  55.     }   
  56.         $first = 1; 
  57.         $prev =$page-1; 
  58.         $next = $page+1; 
  59.         $last=$pages
  60.         if($page>1) 
  61.         { 
  62.             echo "<a href='fenye.php?page=".$first."'>首頁</a>"
  63.             echo "<a href='fenye.php?page=".$prev."'>上一頁</a>"
  64.         } 
  65.         if($page<$pages
  66.         { 
  67.             echo "<a href='fenye.php?page=".$next."'>下一頁</a>"
  68.             echo "<a href='fenye.php?page=".$last."'>最后一頁</a>"
  69.         } 
  70.         echo "<div align = 'center'>共有" .$pages"頁(" .$page"/" .$pages.")"
  71.         for($i=1; $i<$page$i++) 
  72.             echo "<a href='fenye.php?page=".$i."'>[".$i."]</a>"
  73.         echo "[" .$page"]"
  74.         for($i=$page+1; $i<=$pages;$i++) 
  75.             echo "<a href='fenye.php?page=".$i."'>[".$i."]</a>"
  76.         echo"</div>"
  77.     ?>        
  78. </body> 
  79. </html> 

上面代碼不能重復使用,后來整理了一個類,CSS代碼如下:

  1. #pages{display:blocktext-align:centeroverflow:hiddencolor:#000font-size:13px
  2. #pages a{color:#333text-decoration:nonefont-family:Verdana,Geneva,sans-serifpadding:2px 3pxdisplay:block
  3. #pages li{float:leftdisplay:inline-blockborder:1px solid #999margin-right:3pxmargin-left:3px
  4. #pages #spages{background:#CCCfont-weight:boldcolor:#36C

PHP分頁函數類源碼如下:

  1. <?php 
  2. /* 
  3. * 分頁模塊 
  4. */ 
  5.  
  6. interface Page{ 
  7. public function showpage(); 
  8.  
  9. class AdminPage implements Page{ 
  10. /* 
  11. * 構造參數  
  12. * SQL語句,每頁顯示數,url 
  13. */ 
  14. private $sql
  15. private $pageline//每頁顯示多少行數據 
  16. private $urlstr
  17. private $nowpage
  18. private $totalNum
  19. private $pageNum
  20. private $pageStr;// 形成分頁字符串 
  21.  
  22. public function __construct($sql,$p){ 
  23. $this->sql = $sql
  24. $this->pageline = $p
  25. $this->urlstr = $_SERVER['SCRIPT_NAME']; 
  26. if(emptyempty($_GET['p'])){ 
  27. $this->nowpage = 1; //初始化當前頁數為1 
  28. }else if(is_numeric($_GET['p'])){ 
  29. $this->nowpage = $_GET['p']; 
  30. }else
  31. $e = new Error(6); 
  32. $e->show(); 
  33.  
  34. $s = new Sql(); 
  35. $this->totalNum = $s->results_exist_num($this->sql); 
  36. $this->pageNum = ceil($this->totalNum/$this->pageline); 
  37.  
  38. /* 
  39. * 形式為: 
  40. * 首頁| 上一頁| 1 | 2 | 3 | 4 | 5 |下一頁 | 末頁  
  41. * 
  42. * 
  43. */ 
  44.  
  45. public function showpage(){ 
  46. if($this->pageNum >=1 && $this->nowpage <5 ){ 
  47.  
  48. if$this->pageNum <=5){ 
  49.  
  50. $this->pageStr = '<ul id="pages"><li><a href="'.$this->urlstr.'?p=1" target="rframe" >首頁</a></li>'
  51. if($this->nowpage!=1){ 
  52. $this->pageStr .= '<li><a href="'.$this->urlstr.'?p='.($this->nowpage-1).'" target="rframe" >上一頁</a></li>'
  53. }  
  54. for($i=1;$i<=$this->pageNum;$i++){ 
  55. if($i==$this->nowpage){ 
  56. $this->pageStr .='<li id="spages"><a href="'.$this->urlstr.'?p='.$i.'" target="rframe" >'.$i.'</a></li>'
  57. }else
  58. $this->pageStr .='<li><a href="'.$this->urlstr.'?p='.$i.'" target="rframe" >'.$i.'</a></li>'
  59. if($this->nowpage !=$this->pageNum){ 
  60. $this->pageStr .= '<li><a href="'.$this->urlstr.'?p='.($this->nowpage+1).'" target="rframe" >下一頁</a></li>'
  61.  
  62. $this->pageStr .='<li><a href="'.$this->urlstr.'?p='.$this->pageNum.'" target="rframe" >末頁</a></li>'
  63. echo $this->pageStr; 
  64.  
  65. }else if($this->pageNum>5){ 
  66.  
  67. $this->pageStr = '<ul id="pages"><li><a href="'.$this->urlstr.'?p=1" target="rframe" >首頁</a></li>'
  68. if($this->nowpage !=1){ 
  69. $this->pageStr .= '<li><a href="'.$this->urlstr.'?p='.($this->nowpage-1).'" target="rframe" >上一頁</a></li>'
  70.  
  71. for($i=1;$i<=5;$i++){ 
  72. if($i==$this->nowpage){ 
  73. $this->pageStr .='<li id="spages"><a href="'.$this->urlstr.'?p='.$i.'" target="rframe" >'.$i.'</a></li>'
  74. }else
  75. $this->pageStr .='<li><a href="'.$this->urlstr.'?p='.$i.'" target="rframe" >'.$i.'</a></li>'
  76. if($this->nowpage !=$this->pageNum){ 
  77. $this->pageStr .= '<li><a href="'.$this->urlstr.'?p='.($this->nowpage+1).'" target="rframe" >下一頁</a></li>'
  78.  
  79. $this->pageStr .='<li><a href="'.$this->urlstr.'?p='.$this->pageNum.'" target="rframe" >末頁</a></li>'
  80. echo $this->pageStr; 
  81.  
  82. }else if($this->nowpage <= $this->pageNum -2 && $this->nowpage>=5){ 
  83. $this->pageStr = '<ul id="pages"><li><a href="'.$this->urlstr.'?p=1" target="rframe" >首頁</a></li>'
  84. $this->pageStr .= '<li><a href="'.$this->urlstr.'?p='.($this->nowpage-1).'" target="rframe" >上一頁</a></li>'
  85. for($i=$this->nowpage-2;$i<=$this->nowpage+2;$i++){ 
  86. if($i==$this->nowpage){ 
  87. $this->pageStr .='<li id="spages"><a href="'.$this->urlstr.'?p='.$i.'" target="rframe" >'.$i.'</a></li>'
  88. }else
  89. $this->pageStr .='<li><a href="'.$this->urlstr.'?p='.$i.'" target="rframe" >'.$i.'</a></li>'
  90. $this->pageStr .= '<li><a href="'.$this->urlstr.'?p='.($this->nowpage+1).'" target="rframe" >下一頁</a></li>'
  91. $this->pageStr .='<li><a href="'.$this->urlstr.'?p='.$this->pageNum.'" target="rframe" >末頁</a></li>'
  92. echo $this->pageStr; 
  93.  
  94. }else if($this->nowpage>=$this->pageNum-3 && $this->nowpage <=$this->pageNum){ 
  95.  
  96. $this->pageStr = '<ul id="pages"><li><a href="'.$this->urlstr.'?p=1" target="rframe" >首頁</a></li>'
  97. $this->pageStr .= '<li><a href="'.$this->urlstr.'?p='.($this->nowpage-1).'" target="rframe" >上一頁</a></li>'
  98.  
  99. for($i=$this->pageNum-4;$i<=$this->pageNum;$i++){ 
  100. if($i==$this->nowpage){ 
  101. $this->pageStr .='<li id="spages"><a href="'.$this->urlstr.'?p='.$i.'" target="rframe" >'.$i.'</a></li>'
  102. }else
  103. $this->pageStr .='<li><a href="'.$this->urlstr.'?p='.$i.'" target="rframe" >'.$i.'</a></li>'
  104. if($this->nowpage !=$this->pageNum){ 
  105. $this->pageStr .= '<li><a href="'.$this->urlstr.'?p='.($this->nowpage+1).'" target="rframe" >下一頁</a></li>'
  106.  
  107. $this->pageStr .='<li><a href="'.$this->urlstr.'?p='.$this->pageNum.'" target="rframe" >末頁</a></li>'
  108. echo $this->pageStr; 
  109.  

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 浏阳市| 尼勒克县| 尼勒克县| 城市| 肃宁县| 台东市| 宁德市| 绥阳县| 息烽县| 清徐县| 玛曲县| 苗栗县| 鸡西市| 岗巴县| 合江县| 永吉县| 城固县| 文昌市| 乌海市| 昔阳县| 黄冈市| 堆龙德庆县| 万州区| 长治县| 城市| 福泉市| 丰原市| 历史| 阿拉善右旗| 沁阳市| 河源市| 西林县| 株洲县| 兴隆县| 阳山县| 梁河县| 罗田县| 永嘉县| 南通市| 乌兰察布市| 洱源县|