本篇文章主要給大家詳細介紹如何使用PHP實作分頁功能即對資料庫實現分頁效果。在內容介紹之前,大家可以先了解下PHP連結資料庫的具體方法。那麼在這篇文章【PHP怎麼連接Mysql資料庫呢? 】中已經為大家介紹了具體方法,可供需要的朋友進行參考學習。
PHP實現分頁功能的操作,對於PHP新手來說或許有一定的難度。下面我們會透過詳細的程式碼範例,為大家一一解說。希望對需要的朋友有一定的幫助。
PHP實作分頁功能的完整程式碼範例如下:
<?php $host = '127.0.0.1'; $user = 'root'; $password = 'root'; $dbName = 'qiye'; $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['page']) ? $_GET['page'] : 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['username']; ?></td> <td><?php echo $v['email']; ?></td> <td><?php echo $v['phone']; ?></td> <td><?php echo date("Y-m-d", $v['time']); ?></td> </tr> <?php endforeach; ?> </table> <?php if ($page==1){ echo "首页"; }else{ echo "<a href='?page=1'>首页</a>"; } if ($p){ echo "<a href='?page={$p}'>上一页</a>"; }else{ echo "上一页"; } if ($n){ echo "<a href='?page={$n}'>下一页</a>"; }else{ echo "下一页"; } if($page== $w){ echo "尾页"; }else{ echo "<a href='?page={$w}'>尾页</a>"; } ?> </form> </body> </html>
在此段程式碼,我們先透過PDO方式連接了「qiye」這個資料庫,並透過sql語句對其資料進行了查詢遍歷操作。然後在本地創建一個form表單來顯示從資料庫中獲取到的總信息,這裡我們用count函數計算了總條數並賦值予$count 變數。
在沒有進行分頁操作時,透過瀏覽器存取到的資料表單結果為如下圖:如如果我們想要讓form表單中的資料每頁只顯示五條該怎麼操作?大家應該都知道分頁效果,基本上有四個部分,首頁、上一頁、下一頁和尾頁。這裡我們用ceil函數計算出總頁數並賦值於$w變數。其實只要能掌握PHP跳分頁原理,就可以輕鬆完成PHP實現分頁的功能。
那麼在上述完整的程式碼範例中,已經為大家寫出了分頁的具體方法。其中將上一頁與下一頁分別賦予變數$p、$n ,再透過條件語句判斷輸出分頁的四個部分。
PHP跳分頁原理:如果$p即當前頁數不是在首頁也就是不等於1時,我們就將當前頁數減去1,即可實現點擊上一頁的跳轉操作;如果$n即當前頁數不是在尾頁也就是不等於總頁數時,我們就將當前頁數加上1,即可實現點擊下一頁的跳轉操作;如果若要實現點擊首頁或尾頁時,實現直接跳轉操作,只要將$p或$n的值設為1或總頁數即可。
最終PHP分頁實現效果如下圖:
#以上就是關於PHP實作分頁功能的詳細介紹,希望對需要的朋友有幫助!更多相關教學可以存取php中文網mysql影片教學或php影片教學,歡迎參考學習!
以上是PHP怎麼實作分頁功能? (圖文+影片教學)的詳細內容。更多資訊請關注PHP中文網其他相關文章!