>데이터 베이스 >MySQL 튜토리얼 >PHP 개발 실습: PHP와 MySQL을 사용하여 기사 페이징 기능 구현

PHP 개발 실습: PHP와 MySQL을 사용하여 기사 페이징 기능 구현

PHPz
PHPz원래의
2023-07-02 22:06:081632검색

PHP 개발 실습: PHP와 MySQL을 사용하여 기사 페이징 기능 구현

소개:
웹사이트 개발에서 기사 페이징은 일반적인 기능 요구 사항입니다. 기사 내용이 너무 많은 경우 사용자가 읽기 쉽도록 기사를 여러 페이지로 나누고 해당 탐색 기능을 제공해야 합니다. 이 기사에서는 PHP와 MySQL을 사용하여 기사 페이징 기능을 구현하는 방법과 코드 예제를 소개합니다.

  1. 준비
    시작하기 전에 PHP와 MySQL이 올바르게 설치되었는지, 기사 내용이 포함된 데이터베이스 테이블이 생성되었는지 확인해야 합니다.
  2. 총 기사 수 쿼리
    먼저 데이터베이스에 몇 개의 기사가 있는지 쿼리해야 합니다. 이 쿼리는 다음 SQL 문을 사용하여 완료할 수 있습니다.
SELECT COUNT(*) FROM articles;

PHP에서는 MySQLi 또는 PDO 확장을 사용하여 데이터베이스에 연결하고 위의 SQL 문을 실행할 수 있습니다. 다음은 MySQLi 확장을 사용하는 샘플 코드입니다.

<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

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

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

// 查询总文章数
$sql = "SELECT COUNT(*) AS total FROM articles";
$result = $conn->query($sql);
$row = $result->fetch_assoc();
$totalArticles = $row["total"];

// 关闭连接
$conn->close();
?>
  1. 총 페이지 수 계산
    페이징 기능을 구현하려면 총 기사 수를 각 페이지에 균등하게 분배한 다음 거기에 몇 페이지가 있는지 계산해야 합니다. 총 있습니다. 각 페이지에 10개의 기사가 표시되도록 지정한다고 가정하면 총 페이지 수는 다음 공식으로 계산할 수 있습니다.
总页数 = CEILING(总文章数 / 每页显示的文章数)

PHP에서는 ceil() 함수를 사용하여 계산을 구현할 수 있습니다. 위의 공식 중 다음은 샘플 코드입니다. ceil()函数实现上述公式的计算。以下是一个示例代码:

<?php
$articlesPerPage = 10;
$totalPages = ceil($totalArticles / $articlesPerPage);
?>
  1. 查询指定页的文章
    接下来,我们需要根据用户请求的页码查询数据库中对应页码的文章。可以使用以下的SQL语句完成这个查询:
SELECT * FROM articles LIMIT 起始位置, 每页显示的文章数;

起始位置可以通过如下公式计算得出:

起始位置 = (当前页码 - 1) * 每页显示的文章数;

在PHP中,可以使用以下代码查询指定页的文章:

<?php
// 获取用户请求的页码
$page = isset($_GET['page']) ? $_GET['page'] : 1;

// 计算起始位置
$start = ($page - 1) * $articlesPerPage;

// 查询指定页的文章
$sql = "SELECT * FROM articles LIMIT $start, $articlesPerPage";
$result = $conn->query($sql);
$articles = $result->fetch_all(MYSQLI_ASSOC);
?>
  1. 显示分页导航
    最后,我们需要在页面中显示分页导航链接,让用户能够方便地浏览不同页的文章。可以通过使用3499910bf9dac5ae3c52d5ede7383485
    <?php
    $baseUrl = "http://yourwebsite.com/articles.php";
    ?>
    
    <div class="pagination">
        <?php for ($i = 1; $i <= $totalPages; $i++) { ?>
            <a href="<?php echo $baseUrl . '?page=' . $i; ?>"><?php echo $i; ?></a>
        <?php } ?>
    </div>
    1. 지정된 페이지의 기사를 쿼리합니다
    다음으로 요청한 페이지 번호를 기준으로 데이터베이스에서 해당 페이지 번호의 기사를 쿼리해야 합니다. 사용자. 다음 SQL 문을 사용하여 이 쿼리를 완료할 수 있습니다.

    rrreee

    시작 위치는 다음 공식으로 계산할 수 있습니다.
    rrreee

    PHP에서는 다음 코드를 사용하여 지정된 페이지의 기사를 쿼리할 수 있습니다. 🎜rrreee
      🎜페이지가 매겨진 탐색 표시🎜마지막으로, 사용자가 다른 페이지의 기사를 쉽게 탐색할 수 있도록 페이지에 페이지가 매겨진 탐색 링크를 표시해야 합니다. 탐색 링크는 3499910bf9dac5ae3c52d5ede7383485 태그를 사용하고 URL 매개변수를 통해 페이지 번호 정보를 전달하여 동적으로 생성할 수 있습니다. 🎜🎜🎜페이지 하단에 페이지 매김 탐색을 표시하는 샘플 코드는 다음과 같습니다. 🎜rrreee🎜결론: 🎜기사 페이지 매김은 사용자 경험과 페이지 로딩 속도를 향상시킬 수 있는 일반적이고 유용한 기능입니다. PHP와 MySQL을 사용하여 기사 페이징 기능을 쉽게 구현할 수 있습니다. 이 기사에서는 PHP 및 MySQL을 사용하여 총 기사 수를 쿼리하고, 총 페이지 수를 계산하고, 지정된 페이지의 기사를 쿼리하고 페이지가 매겨진 탐색을 표시하는 방법을 소개하고 관련 코드 예제를 제공합니다. 이 글이 PHP 개발을 배우고 실습하는 독자들에게 도움이 되기를 바랍니다. 🎜

    위 내용은 PHP 개발 실습: PHP와 MySQL을 사용하여 기사 페이징 기능 구현의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    성명:
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.