php本身是沒有分頁概念的,分頁是URL傳參,然后通過mysql查詢語句到數(shù)據(jù)庫獲取數(shù)據(jù),然后實現(xiàn)的分頁,url上的參數(shù),通過PHP的$_GET都是可以獲取到的。
敖漢ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!
現(xiàn)在市面上的PHP框架基本都有PHP分頁類,參照文檔直接調(diào)用就好了,如果想看實現(xiàn)過程,可以去下載一個TP框架,然后打開里面的分頁類查看里面的源代碼。
PHP代碼如下:
/*
Author:默默
Date :2006-12-03
*/
$page=isset($_GET['page'])?intval($_GET['page']):1; //這句就是獲取page=18中的page的值,假如不存在page,那么頁數(shù)就是1。
$num=10; //每頁顯示10條數(shù)據(jù)
$db=mysql_connect("host","name","pass"); //創(chuàng)建數(shù)據(jù)庫連接
$select=mysql_select_db("db",$db); //選擇要操作的數(shù)據(jù)庫
/*
首先咱們要獲取數(shù)據(jù)庫中到底有多少數(shù)據(jù),才能判斷具體要分多少頁,具體的公式就是
總數(shù)據(jù)數(shù)除以每頁顯示的條數(shù),有余進一。
也就是說10/3=3.3333=4 有余數(shù)就要進一。
*/
$total=mysql_num_rows(mysql_query("select id from table")); //查詢數(shù)據(jù)的總數(shù),id是數(shù)據(jù)庫中的一個自動賦值的字段
$pagenum=ceil($total/$num); //獲得總頁數(shù)
//假如傳入的頁數(shù)參數(shù)大于總頁數(shù),則顯示錯誤信息
If($page$pagenum || $page == 0){
Echo "Error : Can Not Found The page .";
Exit;
}
$offset=($page-1)*$num; //獲取limit的第一個參數(shù)的值,假如第一頁則為(1-1)*10=0,第二頁為(2-1)*10=10。
$info=mysql_query("select name from table limit $offset,$num"); //獲取相應(yīng)頁數(shù)所需要顯示的數(shù)據(jù),name是數(shù)據(jù)里的一個字段
While($it=mysql_fetch_array($info)){
Echo $it['name']."
";
} //顯示數(shù)據(jù)
For($i=1;$i=$pagenum;$i++){
$show=($i!=$page)?"$i":"$i";
Echo $show." ";
}
/*顯示分頁信息,假如是當(dāng)頁則顯示粗體的數(shù)字,其余的頁數(shù)則為超連接,假如當(dāng)前為第三頁則顯示如下
1 2 3 4 5 6
*/
?
分頁在我們?nèi)粘I钪械木W(wǎng)頁很常見,也是每個程序員必須要掌握的。
1.數(shù)據(jù)庫語句 select * from databaseName limit 0,5;(查找從0開始的5條數(shù)據(jù));
2.url解析:parse_url
3.$_SERVER[REQUEST_URL]獲取當(dāng)前的地址。
上面的是php分頁的基本知識:
?php
$con=mysql_connect("localhost","root","123456") or die("could not connect".mysql_error);//連接數(shù)據(jù)庫
mysql_select_db("test",$con);
$pagesize=10;
$url=$_SERVER["REQUEST_URI"];//解析當(dāng)前地址
$url=parse_url($url);
$url=$url[path];
$numq=mysql_query(select * from text );
$num=mysql_num_rows($numq);//獲取數(shù)據(jù)庫的條數(shù)
if($_GET[page]){
$pageval=$_GET[page];
$page=($pageval-1)*$pagesize;
$page.=',';
}
$int=ceil($num/$pagesize);
if( $pageval=$int){
echo $int;
$pageval=$int-1;
};
$SQL="SELECT * FROM text limit $page $pagesize ";
$query=mysql_query($SQL);
while($row=mysql_fetch_array($query)){
echo "div id='wen'span id='wenzhang_title'".$row['title']."/spandiv class='neirong'span".$row['wenzhang']."/span/divdiv class='time'".$row['time']."/div/div";
}
if($num $pagesize){
if($pageval=1)$pageval=1;
echo "共 $num 條".
" a href=$url?page=".($pageval-1)."上一頁/a a href=$url?page=".($pageval+1)."下一頁/a";
}
?