PHP 原生操作 Mysql 分頁資料案例
-
基於上面文章的檔案,調整了
index.php
程式碼,支援分頁查詢顯示。- 效果
index.php
<?php // 匯入公共檔案 require_once("./db.php"); // 一頁多少條資料 $pagesize = 2; // 頁碼,預設 1 $page = isset($_GET['page']) ? $_GET['page'] : 1; // 開始行號 $startRow = max(($page - 1), 0) * $pagesize; // 執行查詢語句 $sql = "select * from user"; $result = mysqli_query($link, $sql); // 總條數 $count = mysqli_num_rows($result); // 總頁數 $pages = ceil($count / $pagesize); // 構建查詢分頁 sql 語句,注意我這裡用的 `.=` 也就是用上面的 sql 語句拼接下面的 sql 語句 $sql .= " order by id asc limit {$startRow},{$pagesize}"; // 再次執行查詢語句 $result = mysqli_query($link, $sql); // 獲取所有行資料 $arrs = mysqli_fetch_all($result, MYSQLI_ASSOC); // print_r($arrs); ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script> // 新增使用者 function addUser() { location.href = "./add.php"; } // 刪除使用者 function deleteUser(id) { // 詢問是否刪除 if (window.confirm("確定要刪除嗎?")) { // 跳轉到 delete.php 頁面進行刪除,只要不是表單傳送的都是 GET 請求 location.href = "./delete.php?id="+id; } } // 修改使用者 function modifyUser(id) { // 跟新增一樣,跳轉新頁面即可 } </script> </head> <body style="display: flex; align-items: center; flex-direction: column;"> <!-- 提示 --> <h2>總共有 <?php echo $count ?> 個人</h2> <a href="#" onclick="addUser()" style="margin-bottom: 20px;">新增使用者</a> <!-- 列表 --> <table width="300" border="1" rules="all" cellpadding="5"> <!-- 頭部 --> <tr bgcolor="#ccc"> <th>id</th> <th>名稱</th> <th>年齡</th> <th>操作</th> </tr> <!-- 展示資料 --> <?php foreach ($arrs as $arr) { ?> <tr style="text-align: center;"> <td><?php echo $arr["id"] ?></td> <td><?php echo $arr["name"] ?></td> <td><?php echo $arr["age"] ?></td> <!-- 操作 --> <td> <a href="#" onclick="modifyUser(<?php echo $arr['id'] ?>)">修改</a> <!-- 刪除使用者操作 --> <a href="#" onclick="deleteUser(<?php echo $arr['id'] ?>)">刪除</a> </td> </tr> <?php } ?> </table> <!-- 分頁器 --> <div style="margin-top: 20px;"> <!-- 寫法一:列出所有頁碼 --> <!-- <?php for ($i=1; $i <= $pages; $i++) { ?> <a href="?page=<?php echo $i ?>"><?php echo $i ?></a> <?php } ?> --> <!-- 寫法二:列出所有頁碼,當前頁不可點 --> <!-- <?php for ($i=1; $i <= $pages; $i++) { // echo "<a href='index.php?page=$i'>$i</a>"; // 推薦簡寫成這樣,這樣可以使用各種檔案目錄場景: // echo "<a href='?page=$i' style='padding: 5px;'>$i</a>"; // 判斷當前頁不能點選 if ($page == $i) { echo "<span style='padding: 5px;'>$i</span>"; }else { echo "<a href='?page=$i' style='padding: 5px;'>$i</a>"; } } ?> --> <!-- 寫法三:列出所有頁碼,當前頁不可點,且不一次性展示所有分頁,只展示前後2頁頁碼 --> <?php $start = max($page - 2, 1); $end = min($page + 2, $pages); for ($i=$start; $i <= $end; $i++) { if ($page == $i) { echo "<span style='padding: 5px;'>$i</span>"; }else { echo "<a href='?page=$i' style='padding: 5px;'>$i</a>"; } } ?> </div> </body> </html>
相關文章
- PHP操作MySQL資料庫PHPMySql資料庫
- PHP+MYSQL 條件篩選後分頁顯示資料PHPMySql
- PHP系列(十一)PHP操作mysql(i)資料庫PHPMySql資料庫
- PHP+MySQL 千萬級資料處理案例(二) 分表的意義PHPMySql
- PHP+MYSQL的分頁實作PHPMySql
- 原生PHP網頁匯出和匯入excel檔案例項PHP網頁Excel
- PHP+MySQL 千萬級資料處理案例(一)PHPMySql
- Golang原生sql操作Mysql資料庫增刪改查GolangMySql資料庫
- php簡單操作mysql資料庫的類PHPMySql資料庫
- php 分頁PHP
- PHP 操作 mysql blob 資料型別的欄位PHPMySql資料型別
- 24-PHP+MySQL分頁技術詳解PHPMySql
- PHP 原生 DOM 物件操作 XMLPHP物件XML
- MySQL order by limit 分頁資料重複問題MySqlMIT
- mysql分頁-limit offset分頁MySqlMIT
- php分頁類PHP
- SQL資料分頁SQL
- mysql中limit的用法詳解[資料分頁常用]MySqlMIT
- php 分頁 分頁類 簡單實用PHP
- [php]mysql操作流程PHPMySql
- php mysqli操作 mysqlPHPMySql
- MySQL 資料庫操作MySql資料庫
- MySQL 資料表操作MySql
- MySQL資料基本操作MySql
- MySql 資料操作類MySql
- php分頁顯示PHP
- PHP分頁---轉載PHP
- php分頁程式碼PHP
- MySQL單表百萬資料記錄分頁效能優化MySql優化
- MySql、SqlServer、Oracle 三種資料庫查詢分頁方式MySqlServerOracle資料庫
- 資料分頁說明
- ASP資料分頁方法
- ssh的分頁操作
- 資料庫系列:MySQL不同操作分別用什麼鎖?資料庫MySql
- MySQL 資料庫增量資料恢復案例MySql資料庫資料恢復
- 【案例】MySQL count操作優化案例一則MySql優化
- PHP--資料庫基本操作PHP資料庫
- PHP筆記--資料庫操作PHP筆記資料庫