web開發是今後分布式程式開發的主流,通常的web開發都要涉及到與資料庫打交道,客戶端從伺服器端讀取通常都是以分頁的形式來顯示,一頁一頁的閱讀起來既方便又美觀。所以說寫分頁程式是web開發的乙個重要組成部分,在這裡,我們共同來研究分頁程式的編寫。
一、分頁程式的原理
分頁程式有兩個非常重要的引數:每頁顯示幾條記錄($pagesize)和當前是第幾頁($page)。有了這兩個引數就可以很方便的寫出分頁程式,我們以mysql資料庫作為資料來源,在mysql裡如果要想取出表內某段特定內容可以使用的 t-sql語句:select * from table limit offset,rows來實現。這裡的offset是記錄偏移量,它的計算方法是offset=$pagesize*($page-1),rows是要顯示的記錄條數,這裡就是$page。也就是說select * from table limit 10,10這條語句的意思是取出表裡從第11條記錄開始的20條記錄。
二、主要**解析
$pagesize=10; //設定每一頁顯示的記錄數
$conn=mysql_connect("localhost","root",""); //連線資料庫
$rs=mysql_query("select count(*) from tb_product",$conn); //取得記錄總數$rs
$myrow = mysql_fetch_array($rs);
$numrows=$myrow[0];
//計算總頁數
$pages=intval($numrows/$pagesize);
//判斷頁數設定
if (isset($_get['page']))
else
三、建立用例用表mytable
create table mytable(id int not null auto_increment,news_title varchar(50),news_cont text,add_time datetime,primary key(id))
四、完整**
<html>
<head>
<title>php分頁示例</title>
//設定每一頁顯示的記錄數
$pagesize=1;
mysql_select_db("mydata",$conn);
//取得記錄總數$rs,計算總頁數用
$rs=mysql_query("select count(*) from tb_product",$conn);
$myrow = mysql_fetch_array($rs);
$numrows=$myrow[0];
//計算總頁數
$pages=intval($numrows/$pagesize);
if ($numrows%$pagesize)
$pages++;
//設定頁數
if (isset($_get['page']))
else
//計算記錄偏移量
$offset=$pagesize*($page - 1);
//讀取指定記錄數
$rs=mysql_query("select * from mytable order by id desc limit $offset,$pagesize",$conn);
if ($myrow = mysql_fetch_array($rs))
while ($myrow = mysql_fetch_array($rs));
echo "</table>";
}echo "<div align='center'>共有".$pages."頁(".$page."/".$pages.")";
for ($i=1;$i< $page;$i++)
echo "<a href='fenye.php?page=".$i."'>[".$i ."]</a> ";
echo "[".$page."]";
for ($i=$page+1;$i<=$pages;$i++)
echo "<a href='fenye.php?page=".$i."'>[".$i ."]</a> ";
echo "</div>";
?></body>
</html>
五、總結
其實,寫分頁顯示**是很簡單的,只要掌握了它的工作原理。希望這篇文章能夠帶給那些需要這方面程式web程式設計師的幫助。
PHP MySql分頁顯示示例分析
php mysql 分頁顯示示例分析 web開發是今後分布式程式開發的主流,通常的 web開發都要涉及到與資料庫打交道,客戶端從伺服器端讀取通常都是以分頁的形式來顯示,一頁一頁的閱讀起來既方便又美觀。所以說寫分頁程式是 web開發的乙個重要組成部分,在這裡,我們共同來研究分頁程式的編寫。一 分頁程式...
php mysql資料分頁顯示
建立連線 mysqli newmysqli localhost root message if mysqli connect errno mysqli query set names utf8 編碼強制轉換,否則中文顯示亂碼 獲取當前頁數 if isset get page else 每頁數量 pa...
PHP MYSQL分頁原理
select from table limit 開始位置 操作條數 分頁原理 所謂分頁顯示,也就是講資料庫中的結果集,一段一段顯示出來 怎麼分段,當前在第幾段 每頁有幾條,當前再第幾頁 前10條記錄 select from table limit 0,10 第11至20條記錄 select from...