> 데이터 베이스 > MySQL 튜토리얼 > 데이터베이스 결과에 대한 간단한 PHP 페이지 매김을 구현하는 방법은 무엇입니까?

데이터베이스 결과에 대한 간단한 PHP 페이지 매김을 구현하는 방법은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2025-01-21 19:01:11
원래의
328명이 탐색했습니다.

How to Implement Simple PHP Pagination for Database Results?

간단한 PHP 데이터베이스 페이징 스크립트

많은 양의 데이터를 처리할 때 정보를 효과적으로 구성하고 표시하려면 페이징 기능이 중요합니다. 다음은 이 작업을 수행하는 데 도움이 되는 이해하기 쉬운 PHP 페이지 매김 스크립트입니다.

핵심 컨셉:

스크립트는 데이터베이스의 총 항목 수를 결정한 다음 사전 정의된 제한에 따라 모든 항목을 표시하는 데 필요한 페이지 수를 계산합니다. 현재 페이지의 오프셋을 계산하고 시작 및 끝 줄 번호와 같은 현재 페이지에 대한 정보를 표시합니다.

구현 예:

다음 코드 예제는 PHP 페이지 매김 스크립트의 실제 동작을 보여줍니다.

<code class="language-php"><?php 
// 数据库连接和查询
$dbh = new PDO(...);
$total = $dbh->query('SELECT COUNT(*) FROM table')->fetchColumn();

// 分页设置
$limit = 20;
$pages = ceil($total / $limit);
$page = min($pages, filter_input(INPUT_GET, 'page', FILTER_VALIDATE_INT, array(
    'options' => array(
        'default' => 1,
        'min_range' => 1,
    ),
)));
$offset = ($page - 1) * $limit;

// 分页显示
$start = $offset + 1;
$end = min(($offset + $limit), $total);
$prevlink = ($page > 1) ? '<a href="?page=1">首页</a> <a href="?page=' . ($page - 1) . '">上一页</a>' : '« ‹';
$nextlink = ($page < $pages) ? '<a href="?page=' . ($page + 1) . '">下一页</a> <a href="?page=' . $pages . '">尾页</a>' : '› »';
echo "<div><p>此脚本根据数据库结果动态计算分页,提供了一种用户友好的方式,可以一次一页地浏览大型数据集。</p></div>";
echo "<div>显示{$start}到{$end}条记录,共{$total}条记录,共{$pages}页</div>";
echo "<div>{$prevlink} {$nextlink}</div>";

// 查询并显示分页数据
$stmt = $dbh->prepare("SELECT * FROM table LIMIT :limit OFFSET :offset");
$stmt->bindParam(':limit', $limit, PDO::PARAM_INT);
$stmt->bindParam(':offset', $offset, PDO::PARAM_INT);
$stmt->execute();
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
    // 显示数据
    echo "<pre class="brush:php;toolbar:false">";
    print_r($row);
    echo "
"; } ?>
로그인 후 복사

위 내용은 데이터베이스 결과에 대한 간단한 PHP 페이지 매김을 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿