PHP Mysql 分頁原理及應用

2021-08-25 23:56:13 字數 2279 閱讀 7447

分頁程式有兩個非常重要的引數:每頁顯示幾條記錄($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分頁原理

select from table limit 開始位置 操作條數 分頁原理 所謂分頁顯示,也就是講資料庫中的結果集,一段一段顯示出來 怎麼分段,當前在第幾段 每頁有幾條,當前再第幾頁 前10條記錄 select from table limit 0,10 第11至20條記錄 select from...

PHP mysql分頁原理實現

編碼寄語 化繁為簡,則豁然開朗。執行截圖 關鍵步驟 建立資料庫 create table page id int 10 not null auto increment,name varchar 10 default null,primary key id 傳入頁碼 使用get方法 page get ...

PHP學習筆記(七)PHP MYSQL分頁原理

分頁是web程式設計的常用技術,分頁只需要知道兩個關鍵點 當前是第幾頁 每一頁分多少條 1 sql語句中的limit用法 select from table limit 開始位置 操作條數 ps 開始位置是從0開始的。例 前 10 條記錄 select from table limit 0,10 第...