首頁 >每日程式設計 >PHP知識 >PHP怎麼實作分頁功能? (圖文+影片教學)

PHP怎麼實作分頁功能? (圖文+影片教學)

藏色散人
藏色散人原創
2018-09-12 16:31:0712954瀏覽

本篇文章主要給大家詳細介紹如何使用PHP實作分頁功能即對資料庫實現分頁效果。在內容介紹之前,大家可以先了解下PHP連結資料庫的具體方法。那麼在這篇文章【PHP怎麼連接Mysql資料庫呢? 】中已經為大家介紹了具體方法,可供需要的朋友進行參考學習。

PHP實現分頁功能的操作,對於PHP新手來說或許有一定的難度。下面我們會透過詳細的程式碼範例,為大家一一解說。希望對需要的朋友有一定的幫助。

PHP實作分頁功能的完整程式碼範例如下:

<?php
$host = &#39;127.0.0.1&#39;;
$user = &#39;root&#39;;
$password = &#39;root&#39;;
$dbName = &#39;qiye&#39;;

$pdo = new PDO("mysql:host=$host;dbname=$dbName", $user, $password);
$sql = "select * from user";
$data = $pdo->query($sql)->fetchAll();

$num = 5;
$count = count($data);
$w = ceil($count / $num);

$page = isset($_GET[&#39;page&#39;]) ? $_GET[&#39;page&#39;] : 1;
//var_dump($page);
$offset = ($page - 1) * $num;
//var_dump($offset);
$sql = "select * from user limit $offset,{$num}";

$data = $pdo->query($sql)->fetchAll();

$p = ($page == 1) ? 0 : ($page - 1);
$n = ($page == $w) ? 0 : ($page + 1);

?>
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
<form action="">
    <table border="1">
        <tr>
            <th>姓名</th>
            <th>邮箱</th>
            <th>号码</th>
            <th>时间</th>
        </tr>
        <?php foreach ($data as $v): ?>
 <tr>
                <td><?php echo $v[&#39;username&#39;]; ?></td>
                <td><?php echo $v[&#39;email&#39;]; ?></td>
                <td><?php echo $v[&#39;phone&#39;]; ?></td>
                <td><?php echo date("Y-m-d", $v[&#39;time&#39;]); ?></td>
            </tr>
        <?php endforeach; ?>
 </table>
    <?php
    if ($page==1){
 echo "首页";
    }else{
 echo "<a href=&#39;?page=1&#39;>首页</a>";
    }
 if ($p){
 echo "<a href=&#39;?page={$p}&#39;>上一页</a>";
    }else{
 echo "上一页";
    }
 if ($n){
 echo "<a href=&#39;?page={$n}&#39;>下一页</a>";
    }else{
 echo "下一页";
    }
 if($page== $w){
 echo "尾页";
    }else{
 echo "<a href=&#39;?page={$w}&#39;>尾页</a>";
    }
 ?>
</form>
</body>
</html>

在此段程式碼,我們先透過PDO方式連接了「qiye」這個資料庫,並透過sql語句對其資料進行了查詢遍歷操作。然後在本地創建一個form表單來顯示從資料庫中獲取到的總信息,這裡我們用count函數計算了總條數並賦值予$count 變數。

在沒有進行分頁操作時,透過瀏覽器存取到的資料表單結果為如下圖:PHP怎麼實作分頁功能? (圖文+影片教學)如如果我們想要讓form表單中的資料每頁只顯示五條該怎麼操作?大家應該都知道分頁效果,基本上有四個部分,首頁、上一頁、下一頁和尾頁。這裡我們用ceil函數計算出總頁數並賦值於$w變數。其實只要能掌握PHP跳分頁原理,就可以輕鬆完成PHP實現分頁的功能。

那麼在上述完整的程式碼範例中,已經為大家寫出了分頁的具體方法。其中將上一頁與下一頁分別賦予變數$p、$n ,再透過條件語句判斷輸出分頁的四個部分。

PHP跳分頁原理:如果$p即當前頁數不是在首頁也就是不等於1時,我們就將當前頁數減去1,即可實現點擊上一頁的跳轉操作;如果$n即當前頁數不是在尾頁也就是不等於總頁數時,我們就將當前頁數加上1,即可實現點擊下一頁的跳轉操作;如果若要實現點擊首頁或尾頁時,實現直接跳轉操作,只要將$p或$n的值設為1或總頁數即可。

最終PHP分頁實現效果如下圖:

PHP怎麼實作分頁功能? (圖文+影片教學)

PHP怎麼實作分頁功能? (圖文+影片教學)

#以上就是關於PHP實作分頁功能的詳細介紹,希望對需要的朋友有幫助!更多相關教學可以存取php中文網mysql影片教學php影片教學,歡迎參考學習!

以上是PHP怎麼實作分頁功能? (圖文+影片教學)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn