PHP および MySQL のページネーション
ページネーションは、ユーザーが関連するデータセットの一部のみをロードできるため、大規模なデータセットを扱う場合に非常に重要です。これにより、サーバーの負荷が軽減され、アプリケーションの応答速度が向上します。この Q&A では、PHP および MySQL でページ分割されたクエリを使用する方法について説明します。
質問:
MySQL クエリをページ分割して 1 ページに 10 件の結果を表示するにはどうすればよいですか?
答え:
<?php // 数据库连接代码在此处省略 $perPage = 10; $page = (isset($_GET['page'])) ? (int)$_GET['page'] : 1; $startAt = $perPage * ($page - 1); $query = "SELECT COUNT(*) as total FROM redirect WHERE user_id = '".$_SESSION['user_id']."'"; $r = mysql_fetch_assoc(mysql_query($query)); $totalPages = ceil($r['total'] / $perPage); $links = ""; for ($i = 1; $i <= $totalPages; $i++) { $links .= ($i != $page) ? "<a href='index.php?page=$i'>Page $i</a> " : "$page "; } $query = "SELECT * FROM 'redirect' WHERE 'user_id'= \''.$_SESSION['user_id'].' \' ORDER BY 'timestamp' LIMIT $startAt, $perPage"; $r = mysql_query($query); // 在此处显示结果 echo $links; // 显示其他页面的链接
説明:
以上がPHP で MySQL クエリをページ分割して 1 ページあたり 10 件の結果を表示する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。