PHPでページ番号を表示するクエリページングを実装する方法
Web 開発では、データのクエリと表示は非常に一般的な操作です。クエリされたデータのページング表示には、対応するページ番号がページ上に表示される必要があります。これは、ユーザーがページめくり操作を容易にするために必要な要件です。この記事では、PHP コードを通じてクエリ ページングを実装し、リスト ページに対応するページ番号を表示する方法を説明します。
1. クエリ ページングの基本原則
完全なページング関数では、クエリ条件、ページング数、現在のページ番号などの複数の要素を考慮する必要があります。特定の実装では、最初にクエリ条件を通じて条件を満たすすべてのデータの合計数をクエリし、次にデータの総数と各ページに表示される数に基づいてページの総数を計算し、ページング クエリを実行する必要があります。 、最後にフロントエンドに対応するデータとページ番号を表示します。
具体的な処理は次のとおりです。
- クエリ条件を取得
- 条件を満たすデータの総量をクエリ
- 計算各ページに表示される番号に基づく合計ページ番号
- ユーザーが要求した現在のページ番号を取得します
- ページング クエリの開始位置を計算します
- ページング クエリを実行します操作
- データと対応するページをフロントエンド ページに表示します。 Page
2. PHP はクエリ ページングを実装します
次に、クエリ ページング関数を実装します。 PHPコードを通じて。
2.1 総量のクエリ
まず、条件を満たすデータの総量をクエリする必要があります。 items
という名前のデータ テーブルがあり、その中にデータのステータスを示す status
フィールドがあるとします。ステータス を持つすべてのデータ レコードの合計数をクエリする必要があります。 1
、コードは次のとおりです:
// 连接数据库 $conn = mysqli_connect('<host>', '<username>', '<password>', '<database>'); // 构造查询SQL,获取符合条件的数据总数 $sql = "SELECT COUNT(*) AS total FROM `items` WHERE `status`=1"; $res = mysqli_query($conn, $sql); $row = mysqli_fetch_assoc($res); $total = $row['total'];
このコードでは、まず mysqli_connect
関数を通じてデータベースに接続し、次にクエリ SQL を構築し、クエリ操作を実行します。 mysqli_query
関数を使用して、最後に mysqli_fetch_assoc
関数を使用してクエリ結果から合計数を取得します。
2.2 総ページ数と現在のページ番号を計算する
次に、ページに表示されている番号に基づいて、ユーザーが要求した総ページ数と現在のページ番号を計算する必要があります。各ページと総データ量。
// 定义每页显示的数据条数和当前请求的页码,默认为1和1 $limit = 10; // 每页显示的数据条数 $page = isset($_GET['page']) ? intval($_GET['page']) : 1; // 当前请求的页码 // 计算总页数 $totalPage = ceil($total / $limit); if ($page > $totalPage || $page < 1) { $page = 1; } // 计算分页查询的起始位置 $offset = ($page - 1) * $limit;
このうち、リクエストパラメータに page
パラメータが存在するかどうかを isset
関数で確認し、存在する場合は 関数で変換します。 intval
関数。整数です。そうでない場合は、デフォルトで最初のページになります。次に、ceil
関数により総ページ数を計算し、要求されたページ番号の妥当性を判定します。
最後に、データベース内でページング クエリを実行するために、ページング クエリの開始位置を計算する必要があります。単純な乗算演算を使用して、データのクエリが開始されるオフセットを計算します。
2.3 ページング クエリの実行
総データ量、総ページ数、クエリ オフセットを使用して、ページング クエリを実行できます。以下は、ページング データをクエリするコード例です。
// 查询数据(以status字段为1的数据为例) $sql = "SELECT * FROM `items` WHERE `status`=1 LIMIT {$offset},{$limit}"; $res = mysqli_query($conn, $sql); $rows = mysqli_fetch_all($res, MYSQLI_ASSOC);
このコード スニペットは、クエリ オフセットとページごとの表示数を SQL ステートメントの LIMIT
キーワードに渡して、ページングを実行します。クエリ操作です。クエリ結果は mysqli_fetch_all
関数を通じて取得され、PHP 配列の形式で呼び出し元に返されます。
2.4 ページングでのページ番号の表示
最後に、クエリ結果と対応するページ番号をフロントエンド ページに表示する必要があります。ページ番号を表示するには、通常、HTML の <ul> 要素と <code><li>
要素を使用して、各ページのページ番号リンクを <li>## で囲みます。 # 要素を使用し、
- に ## を追加します。
要素。フロントエンド スタイルの処理を容易にする #active
クラス。同時に、条件ステートメントを使用して現在のページ番号の表示を処理します。現在のページ番号はリンクを追加する必要がなく、echo
ステートメントを通じて直接出力できます。一方、他のページは番号は<a>
要素でリンクを追加する必要があります。3. 概要
この記事では、PHP を介してクエリ ページングを実装する方法と、フロントエンド ページにページング ページ番号を表示する方法を紹介します。ページング機能の実装は Web 開発ではよくある作業ですが、この記事の紹介によって、皆さんもページング機能についての理解が深まったと思います。
以上がPHPでページ番号を表示するクエリページングを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。
要素を使用してすべてのページ番号リンクをラップします。
<!-- 分页展示 --> <ul> <?php for ($i = 1; $i <= $totalPage; $i++) : ?> <li <?php if ($i == $page) echo 'class="active"' ?>> <?php if ($i == $page) : ?> <?php echo $i; ?> <?php else : ?> <a href="?page=<?php echo $i; ?>"><?php echo $i; ?></a> <?php endif; ?> </li> <?php endfor; ?> </ul>
for ループを使用してすべてのページ番号を調べます。現在のページ番号については、対応する

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









