현재 위치: > 최신 기사 목록> PHP를 사용하여 효율적인 데이터 페이징 기능을 달성하는 방법

PHP를 사용하여 효율적인 데이터 페이징 기능을 달성하는 방법

M66 2025-06-20

PHP를 사용하여 효율적인 데이터 페이징 기능을 달성하는 방법

소개:
웹 사이트 개발에서 데이터 페이징 기능은 다량의 데이터를 표시하는 데 필수 불가결 한 부분입니다. Pagination은 웹 사이트 성능을 향상시킬뿐만 아니라 사용자에게 더 나은 탐색 경험을 제공 할 수 있습니다. 이 기사에서는 PHP 코드를 통해 간단하고 효율적인 데이터 페이징 기능을 구현하는 방법을 보여줍니다.

1. 준비

코드를 작성하기 전에 MySQL 데이터베이스 및 해당 데이터 테이블을 준비해야합니다. "사용자"라는 데이터 테이블을 작성했다고 가정하면 구조는 다음과 같습니다.

    테이블 사용자 만들기 (
      id int (11) null auto_increment,
      이름 Varchar (50) NOL NULL,
      나이 int (11) NULL,
      기본 키 (ID)
    ) 엔진 = innodb 기본 charset = utf8;
    

2. 페이징 기능 코드를 쓰십시오

  1. 데이터베이스에 연결 :
    먼저 데이터베이스 연결 기능을 작성하고 올바른 데이터베이스 연결 정보를 작성해야합니다. 코드 예제는 다음과 같습니다.
    <?php
    function connectDB() {
        $servername = "localhost";
        $username = "root";
        $password = "password";
        $dbname = "database";

        // 연결을 만듭니다
        $conn = new mysqli($servername, $username, $password, $dbname);

        // 연결이 성공했는지 여부를 감지하십시오
        if ($conn-> connect_error) {
            다이 ( "연결 실패 :". $ conn-> connect_error);
        }

        $ conn을 반환합니다.
    }
    ?>
    
  1. 총 데이터 수를 얻으십시오.
    다음으로 데이터 테이블에서 총 레코드 수를 얻으려면 기능을 작성하십시오. 코드는 다음과 같습니다.
    <?php
    function getTotalCount() {
        $conn = connectDB();
        $sql = "SELECT COUNT(*) AS count FROM users";
        $result = $conn-> 쿼리 ($ SQL);
        $ row = $ result-> fetch_assoc ();
        $ count = $ row [ "count"];
        $ conn-> close ();

        return $ count;
    }
    ?>
    
  1. Pagination Query 데이터 :
    페이지 번호와 각 페이지에 표시된 레코드 수에 따라 해당 데이터를 쿼리하는 기능을 작성하십시오. 코드 예제는 다음과 같습니다.
    <?php
    function getData($page, $pageSize) {
        $conn = connectDB();
        $start = ($page - 1) * $pageSize;
        $sql = "SELECT * FROM users LIMIT $start, $pageSize";
        $result = $conn-> 쿼리 ($ SQL);
        $ data = [];

        if ($ result-> num_rows> 0) {
            while ($ row = $ result-> fetch_assoc ()) {
                $ data [] = $ 행;
            }
        }
        $ conn-> close ();

        반환 $ 데이터;
    }
    ?>
    
  1. 페이징 내비게이션 표시 :
    마지막으로, 사용자가 다른 페이지 번호를 전환 할 수 있도록 페이징 내비게이션을 표시하는 기능을 작성하십시오. 코드 예제는 다음과 같습니다.
    <?php
    function showPagination($page, $pageSize, $totalCount) {
        $totalPage = ceil($totalCount / $pageSize);
        $prevPage = $page - 1;
        $nextPage = $page + 1;

        echo "<div class='pagination'> ";

        if ($ page> 1) {
            에코 " <a href='?page=$prevPage'>이전 페이지</a> ";
        }

        for ($ i = 1; $ i <= $ totalpage; $ i ++) {
            if ($ i == $ page) {
                에코 "$ i";
            } 또 다른 {
                에코 " <a href='?page=$i'>$ i</a> ";
            }
        }

        if ($ page <$ totalpage) {
            에코 " <a href='?page=$nextPage'>다음 페이지</a> ";
        }

        에코 "</div> ";
    }
    ?>
    

3. 페이징 기능을 사용하십시오

위의 기능 코드를 PHP 파일에 통합하고 다음 코드를 추가하여 페이징 기능을 표시합니다.

    <?php
    $page = isset($_GET['page']) ? $_GET['page'] : 1;
    $pageSize = 10;

    $totalCount = getTotalCount();
    $data = getData($page, $pageSize);

    // 표시 데이터
    foreach ($data as $row) {
        echo sprintf("ID:%s,이름:%s,나이:%s<br> ", $ row [ &#39;id&#39;], $ row [ &#39;name&#39;], $ row [ &#39;age&#39;]);
    }

    // Pagination Navigation ShowPagination 표시 ($ Page, $ Pagesize, $ TotalCount);
    ?>
    

결론적으로

위의 단계를 통해 PHP 및 MySQL을 사용하여 데이터 페이징을 표시하는 간단한 데이터 페이징 기능을 성공적으로 구현했습니다. 실제 요구에 따라보다 복잡한 페이징 기능에 맞게 이러한 코드를 수정하거나 확장 할 수 있습니다. 이 기사가 개발자가 실제 프로젝트에서 데이터 페이징을 더 잘 적용하도록 도울 수 있기를 바랍니다.