php本身是沒(méi)有分頁(yè)概念的,分頁(yè)是URL傳參,然后通過(guò)mysql查詢(xún)語(yǔ)句到數(shù)據(jù)庫(kù)獲取數(shù)據(jù),然后實(shí)現(xiàn)的分頁(yè),url上的參數(shù),通過(guò)PHP的$_GET都是可以獲取到的。
創(chuàng)新互聯(lián)建站堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站建設(shè)、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的巫山網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
現(xiàn)在市面上的PHP框架基本都有PHP分頁(yè)類(lèi),參照文檔直接調(diào)用就好了,如果想看實(shí)現(xiàn)過(guò)程,可以去下載一個(gè)TP框架,然后打開(kāi)里面的分頁(yè)類(lèi)查看里面的源代碼。
SELECT
TOP
25
*
FROM
(SELECT
*
FROM
表名
WHERE
條件)
T
WHERE
(主鍵
NOT
IN
(SELECT
TOP
通過(guò)PHP計(jì)數(shù)值(每頁(yè)條數(shù)
*
(當(dāng)前頁(yè)
-
1)
)
主鍵
FROM
(SELECT
*
FROM
表名
WHERE
條件)
T2
ORDER
BY
T2.主鍵
DESC))
上面SELECT
*
FROM
表名
WHERE
條件有兩句,這兩句就是你查詢(xún)時(shí)真正的SQL語(yǔ)句
你可以寫(xiě)個(gè)存儲(chǔ)過(guò)程,或?qū)憘€(gè)PHP函數(shù)
說(shuō)明你點(diǎn)下一頁(yè)的時(shí)候,查詢(xún)條件沒(méi)有獲取到,下一頁(yè)的是連接,所以接受數(shù)據(jù)參數(shù)的時(shí)候需要用$_GET 來(lái)接收,提交的時(shí)候也需要用get方法提交,這樣才能保證參數(shù)不會(huì)丟失,點(diǎn)擊下一頁(yè)的時(shí)候限制條件保持一致
PHP代碼如下:
/*
Author:默默
Date :2006-12-03
*/
$page=isset($_GET['page'])?intval($_GET['page']):1; //這句就是獲取page=18中的page的值,假如不存在page,那么頁(yè)數(shù)就是1。
$num=10; //每頁(yè)顯示10條數(shù)據(jù)
$db=mysql_connect("host","name","pass"); //創(chuàng)建數(shù)據(jù)庫(kù)連接
$select=mysql_select_db("db",$db); //選擇要操作的數(shù)據(jù)庫(kù)
/*
首先咱們要獲取數(shù)據(jù)庫(kù)中到底有多少數(shù)據(jù),才能判斷具體要分多少頁(yè),具體的公式就是
總數(shù)據(jù)數(shù)除以每頁(yè)顯示的條數(shù),有余進(jìn)一。
也就是說(shuō)10/3=3.3333=4 有余數(shù)就要進(jìn)一。
*/
$total=mysql_num_rows(mysql_query("select id from table")); //查詢(xún)數(shù)據(jù)的總數(shù),id是數(shù)據(jù)庫(kù)中的一個(gè)自動(dòng)賦值的字段
$pagenum=ceil($total/$num); //獲得總頁(yè)數(shù)
//假如傳入的頁(yè)數(shù)參數(shù)大于總頁(yè)數(shù),則顯示錯(cuò)誤信息
If($page$pagenum || $page == 0){
Echo "Error : Can Not Found The page .";
Exit;
}
$offset=($page-1)*$num; //獲取limit的第一個(gè)參數(shù)的值,假如第一頁(yè)則為(1-1)*10=0,第二頁(yè)為(2-1)*10=10。
$info=mysql_query("select name from table limit $offset,$num"); //獲取相應(yīng)頁(yè)數(shù)所需要顯示的數(shù)據(jù),name是數(shù)據(jù)里的一個(gè)字段
While($it=mysql_fetch_array($info)){
Echo $it['name']."
";
} //顯示數(shù)據(jù)
For($i=1;$i=$pagenum;$i++){
$show=($i!=$page)?"$i":"$i";
Echo $show." ";
}
/*顯示分頁(yè)信息,假如是當(dāng)頁(yè)則顯示粗體的數(shù)字,其余的頁(yè)數(shù)則為超連接,假如當(dāng)前為第三頁(yè)則顯示如下
1 2 3 4 5 6
*/
?
本文名稱(chēng):php分頁(yè)與數(shù)據(jù)庫(kù),php 讀取數(shù)據(jù)庫(kù)內(nèi)容 前臺(tái)分頁(yè)
文章源于:http://m.kartarina.com/article30/heggso.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、小程序開(kāi)發(fā)、做網(wǎng)站、網(wǎng)站內(nèi)鏈、定制開(kāi)發(fā)、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)