ホームページ  >  記事  >  バックエンド開発  >  PHP ページネーションを使用してコンテンツをクエリする方法

PHP ページネーションを使用してコンテンツをクエリする方法

PHPz
PHPzオリジナル
2023-04-10 14:12:57628ブラウズ

PHP は、Web アプリケーションの開発に使用される人気のあるプログラミング言語です。 PHP は、データベースからデータを抽出し、読みやすい方法で表示する場合に非常に便利なツールです。ほとんどの場合、すべてのデータを 1 つのページにロードするよりも、データベースからデータをクエリする方が優れています。この場合、ページ分割された表示は、ユーザーがページの読み込みを遅くすることなく、許容可能な方法でより多くのデータにアクセスできるため、非常に便利です。この記事では、PHP ページネーションを使用してコンテンツをクエリし、Web ページ上に正しく表示する方法を説明します。

最初のステップはデータベースに接続することです。データベースに接続するには、ホスト名、ユーザー名、パスワード、データベース名というデータベース接続パラメーターを知っている必要があります。この例では、「mydatabase」という名前のデータベースに接続します。

<?php
$servername = "localhost";
$username = "myusername";
$password = "mypassword";
$dbname = "mydatabase";

// 创建连接
$conn = mysqli_connect($servername, $username, $password, $dbname);

// 检查连接是否成功
if (!$conn) {
    die("连接失败: " . mysqli_connect_error());
}
echo "连接成功";
?>

次に、データベースからコンテンツを取得する必要があります。 SQL クエリを使用してデータベースからコンテンツを取得します。この例では、「articles」というテーブルから記事を取得します。

// 获取文章总数
$sql = "SELECT COUNT(*) FROM articles";
$result = mysqli_query($conn, $sql);
$row = mysqli_fetch_row($result);
$total_articles = $row[0];

// 分页查询文章
$per_page = 10;
if (isset($_GET["page"])) {
    $page = intval($_GET["page"]);
} else {
    $page = 1;
}
$start = ($page-1) * $per_page;
$sql = "SELECT * FROM articles LIMIT $start, $per_page";
$result = mysqli_query($conn, $sql);

この例では、最初にデータベースから記事の総数を取得し、次に各記事に表示される記事の数を計算します。ページに次に、$_GET 変数を使用してユーザーが要求したページ数を取得し、記事の表示を開始する場所を決定します。最後に、LIMIT ステートメントを使用して、ページ分割された記事をデータベースから取得します。

次に、Web ページにコンテンツを正しく表示する必要があります。

// 在网页上显示文章
echo "<ul>";
while ($row = mysqli_fetch_assoc($result)) {
    echo "<li><a href=&#39;".$row["url"]."&#39;>".$row["title"]."</a></li>";
}
echo "</ul>";

// 显示分页导航
$total_pages = ceil($total_articles / $per_page);
echo "<div class=&#39;pagination&#39;>";
if ($page > 1) {
    echo "<a href=&#39;?page=".($page-1)."&#39;>上一页</a>";
}
for ($i=1; $i<=$total_pages; $i++) {
    if ($page == $i) {
        echo "<span class=&#39;current&#39;>".$i."</span>";
    } else {
        echo "<a href=&#39;?page=".$i."&#39;>".$i."</a>";
    }
}
if ($page < $total_pages) {
    echo "<a href=&#39;?page=".($page+1)."&#39;>下一页</a>";
}
echo "</div>";

この例では、ループ ステートメントを使用して、データベースからクエリされた記事を表示します。各記事は、記事の URL アドレスを指すハイパーリンクとして表示されます。次に、前ページ、次ページ、ページ番号を含むページ分割されたナビゲーションを表示します。ページ分割されたナビゲーションを美しくするために CSS スタイルを使用していることに注意してください。

この記事に示されている例を通じて、PHP を使用してデータベースのコンテンツをクエリし、それらを Web ページにページ単位で表示する方法を理解できるはずです。このアプローチにより、ページの読み込み速度を犠牲にすることなく、より優れたユーザー エクスペリエンスを提供でき、ユーザーは必要な情報をより早く見つけられるようになります。

以上がPHP ページネーションを使用してコンテンツをクエリする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。