> 데이터 베이스 > MySQL 튜토리얼 > 페이지당 10개의 결과를 표시하기 위해 PHP로 MySQL 쿼리를 페이지 매김하는 방법은 무엇입니까?

페이지당 10개의 결과를 표시하기 위해 PHP로 MySQL 쿼리를 페이지 매김하는 방법은 무엇입니까?

Patricia Arquette
풀어 주다: 2024-12-02 04:06:09
원래의
238명이 탐색했습니다.

How to Paginate MySQL Queries with PHP to Display 10 Results Per Page?

PHP 및 MySQL 페이지 매김

페이지 매김은 사용자가 관련 데이터의 일부만 로드할 수 있으므로 대규모 데이터 세트로 작업할 때 매우 중요합니다. 이를 통해 서버 부하를 줄이고 애플리케이션 응답 속도를 향상시킵니다. 이 Q&A에서는 PHP 및 MySQL에서 페이지 매김 쿼리를 사용하는 방법을 안내합니다.

질문:

페이지당 10개의 결과를 표시하기 위해 MySQL 쿼리의 페이지를 매기는 방법은 무엇입니까?

정답:

<?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; // 显示其他页面的链接
로그인 후 복사

설명:

  1. 페이징 변수 설정: $perPage는 페이지당 결과 수를 지정합니다($page). 현재 페이지 번호를 가져옵니다. 지정하지 않으면 기본값은 1입니다.
  2. SQL 오프셋 계산: $startAt는 쿼리의 SKIP 절에 필요한 오프셋을 계산합니다.
  3. 결과의 총 페이지 수 가져오기: 별도의 쿼리를 실행하여 데이터 세트의 총 결과 수를 가져온 후 총 페이지 수를 계산합니다.
  4. 페이지가 매겨진 링크 생성: 루프를 사용하여 다른 페이지에 대한 링크를 생성하고 현재 페이지를 강조표시합니다.
  5. 페이지를 매긴 쿼리 수행: 쿼리 결과를 제한하려면 기본 쿼리에 OFFSET 및 LIMIT 절을 추가하세요.
  6. 결과 표시: 페이지 하단에 페이지 매김 링크가 있는 사용자 정의 페이지에 결과를 표시합니다.

위 내용은 페이지당 10개의 결과를 표시하기 위해 PHP로 MySQL 쿼리를 페이지 매김하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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