程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP基礎知識 >> PHP分頁函數

PHP分頁函數

編輯:PHP基礎知識
 

<?php
function page($sql,$pagesize,$class="")
{
global $db;
$result=mysql_query($sql);
$number=mysql_num_rows($result);//總記錄數
if(!$number){return 0;exit;}
$totalpage=ceil($number/$pagesize);

//接收頁碼數
$pageno=(int)$_GET['page'];
//校驗頁碼數的有效性
$pageno=$pageno<=1?1:$pageno;
$pageno=$pageno>=$totalpage?$totalpage:$pageno;

//計算起始記錄數
$startrow=($pageno-1)*$pagesize;
$sql.=" limit $startrow,$pagesize";
$result=mysql_query($sql);
$num=mysql_num_rows($result)!=$pagesize?mysql_num_rows($result):$pagesize;
$num=$num+$startrow-1;

$url=$_SERVER["PHP_SELF"];

if($pageno==1) $str= '首頁 | 上頁 | ';
else $str= '<a href="'.$url.'?page=1&'.$class.'">首頁</a> | <a href="'.$url.'?page='.($pageno-1).'&'.$class.'">上頁</a> | ';
if($pageno==$totalpage) $str.= "下頁 | 末頁 ";
else $str.= '<a href="'.$url.'?page='.($pageno+1).'&'.$class.'">下頁</a> | <a href="'.$url.'?page='.$totalpage.'&'.$class.'">末頁</a>';
$str.= "共 $totalpage 頁 當前第 $pageno 頁 位於第 $startrow 條至 $num 條記錄";

return array($result,$str);

}

使用方式:

<?php
require("page.php");
$db=mysql_connect("localhost","root","123456") or die("有錯。");
mysql_select_db("info",$db);

$sql="select * from message order by id desc";
//執行分頁函數
$res=page($sql,3);

//將數據資源輸出
echo "<table border=\"1\">";
while($row=mysql_fetch_assoc($res[0])){
echo "<tr>";
foreach($row as $str) echo "<td>$str</td>";
echo "</tr>";
}
echo "</table>";
//分頁控制項
echo $res[1];

?>
 

 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved