欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
小談PHP&MYSQL分頁(yè)原理及實(shí)現
在看本文之前,請確保你已掌握了PHP的一些知識以及MYSQL的查詢(xún)操作基礎哦。

作為一個(gè)Web程序,經(jīng)常要和不計其數的數據打交道,比如會(huì )員的數據,文章數據,假如只有幾十個(gè)會(huì )員那很好辦,在一頁(yè)顯示就可以了,可是假如你的網(wǎng)站是幾千甚至幾十萬(wàn)會(huì )員的話(huà),如果都在一頁(yè)打開(kāi)的話(huà)無(wú)論對瀏覽器還是觀(guān)看者都是一種折磨。


相信每個(gè)學(xué)習PHP的新手都會(huì )對分頁(yè)這個(gè)東西感覺(jué)很頭疼,不過(guò)有了默默的這一水帖,你肯定會(huì )拍拍腦袋說(shuō),嘿,原來(lái)分頁(yè)竟然如此簡(jiǎn)單?的確,現在請深呼吸一口新鮮的空氣,仔細的聽(tīng)默默給你一點(diǎn)一點(diǎn)的分解。

假設我們要處理1000條數據,要在每頁(yè)中顯示10條,這樣的話(huà)就會(huì )分100頁(yè)來(lái)顯示,咱們先看一看在mysql里提取10條信息是如何操作的。

Select * from table limit 0,10

上面是一句很簡(jiǎn)單的mysql查詢(xún)語(yǔ)句,它的作用是從一個(gè)名叫table的表里提取10條數據,并且把所有字段的值都獲得。

關(guān)鍵的地方就在這段“limit 0,10,它其中的0是以0為起始點(diǎn),后面的10則是顯示10條數據,那么我們要以10為起始點(diǎn),顯示到第20條數據該怎么寫(xiě)呢?

可能很多大大會(huì )心直口快的說(shuō)“limit 10,20”嘛!啊哦,這樣可就錯誤了哦,正確的寫(xiě)法是“limit 10,10它后面的參數并非是結束點(diǎn)而是要提取的數目,記住哦。

懂得了如何提取10條數據,那么提取1000條也就是做100次這種查詢(xún)呀,就是說(shuō)要做如下的查詢(xún):

Limit 0,10                 //第一頁(yè)
Limit 10,10                //第二頁(yè)
Limit 20,10                //第三頁(yè)
Limit 30,10                //第四頁(yè)
……
看出有什么規律了嗎?沒(méi)錯,第一個(gè)參數每翻一頁(yè)就增加10,可是第二個(gè)參數是不變的。
也就是說(shuō)咱們設法根據頁(yè)數來(lái)改變第一個(gè)參數的值,就可以進(jìn)行分頁(yè)顯示數據了,怎么樣,原理是不是很簡(jiǎn)單?

可是要怎么設法根據頁(yè)數來(lái)改變第一個(gè)參數的值呢?首先,咱們要有一個(gè)頁(yè)數的值,用urlGET方式獲取。
比如index.php?page=18
相信大部分的大大對這個(gè)東西不陌生吧,這種url地址可是隨處可見(jiàn),其中的page參數的作用就是傳入要顯示的頁(yè)數。

咱們通過(guò)一段代碼來(lái)看一看究竟是如何實(shí)現的吧:

PHP代碼如下:

<?php

/*

Author:默默
Date  :2006-12-03

*/

$page=isset($_GET[‘page‘])?intval($_GET[‘page‘]):1;        //這句就是獲取page=18中的page的值,假如不存在page,那么頁(yè)數就是1。
$num=10;                                      //每頁(yè)顯示10條數據

$db=mysql_connect("host","name","pass");           //創(chuàng )建數據庫連接
$select=mysql_select_db("db",$db);                 //選擇要操作的數據庫

/*
首先咱們要獲取數據庫中到底有多少數據,才能判斷具體要分多少頁(yè),具體的公式就是
總數據數除以每頁(yè)顯示的條數,有余進(jìn)一。
也就是說(shuō)10/3=3.3333=4 有余數就要進(jìn)一。
*/

$total=mysql_num_rows(mysql_query("select * from table")); //查詢(xún)數據的總數
$pagenum=ceil($total/$num);                                    //獲得總頁(yè)數

//假如傳入的頁(yè)數參數大于總頁(yè)數,則顯示錯誤信息
If($page>$pagenum || $page == 0){
       Echo 
"Error : Can Not Found The page .";
       Exit;
}

$offset=($page-1)*$num;                                        //獲取limit的第一個(gè)參數的值,假如第一頁(yè)則為(1-1)*10=0,第二頁(yè)為(2-1)*10=10。

$info=mysql_query("select * from table limit $offset,$num");   //獲取相應頁(yè)數所需要顯示的數據
While($it=mysql_fetch_array($info)){
       Echo 
$it[‘name‘]."<br />";
}                                                              
//顯示數據
   
For($i=1;$i<=$pagenum;$i++){
       
       
$show=($i!=$page)?"<a href=‘index.php?page=".$i."‘>$i</a>":"<b>$i</b>";
       Echo 
$show." ";
}

/*顯示分頁(yè)信息,假如是當頁(yè)則顯示粗體的數字,其余的頁(yè)數則為超連接,假如當前為第三頁(yè)則顯示如下
1 2 3 4 5 6
*/
?>  


假如你仔細的讀過(guò)上面的代碼,把數據庫連接和查詢(xún)的表替換成你的,那么就能看見(jiàn)它的執行效果哦。 
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
PHP實(shí)現分頁(yè)原理詳解【附源代碼】
php分頁(yè)
一次深夜優(yōu)化 MySQL 億級數據分頁(yè)的奇妙經(jīng)歷!
Mysql limit 優(yōu)化,百萬(wàn)至千萬(wàn)級快速分頁(yè),--復合索引的引用并應用于輕量級框架
仿GOOGLE和Discuz分頁(yè)函數
別在用offset和limit分頁(yè)了
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久