ページネーションは、大規模なデータセットを効率的に管理し、ユーザーが小さな管理しやすいページでデータを参照できるようにするために不可欠です。 。 MySQL では、ページネーションを実装するために、LIMIT と OFFSET という 2 つのキーワードが提供されています。
提供されたコードは、ページあたり 4 項目の固定制限を使用しており、所定のデータベース サイズで機能します。ただし、目標は、ページ オフセットをハードコーディングせずに動的ページネーションを作成することです。
動的ページネーションを作成するには、次のことを行う必要があります。
「次のページ」リンクを表示するかどうかを決定するには、合計ページ数を知る必要があります:
現在のページ番号 ($page) と総ページ数 ($page_count) を使用して、ページネーション用のリンクを動的に生成できます。たとえば、ループでページを反復処理し、ページごとにリンクを作成できます。現在のページはテキストとして表示され、他のページはリンクとして表示されます。
// Get the current page number from the URL $page = 1; if (isset($_GET['page'])) { $page = filter_input(INPUT_GET, 'page', FILTER_VALIDATE_INT); if ($page === false) { $page = 1; } } // Set the number of items to display per page $items_per_page = 4; // Build the query $offset = ($page - 1) * $items_per_page; $sql = "SELECT * FROM menuitem LIMIT $offset, $items_per_page"; // Execute the query and fetch the results // Calculate the total number of rows $sql_count = "SELECT COUNT(*) AS row_count FROM menuitem"; $result_count = mysqli_query($con, $sql_count); $row_count = mysqli_num_rows($result_count); $page_count = (int)ceil($row_count / $items_per_page); // Check if the requested page is in range if ($page > $page_count) { // Display an error or set the page to 1 } // Later, when outputting the page, you can use $page and $page_count to generate pagination links
以上がLIMIT と OFFSET を使用して MySQL で動的ページネーションを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。