>데이터 베이스 >MySQL 튜토리얼 >페이지당 10개 레코드 제한으로 PHP 및 MySQL 페이지 매김을 구현하는 방법은 무엇입니까?

페이지당 10개 레코드 제한으로 PHP 및 MySQL 페이지 매김을 구현하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-06 06:49:11479검색

How to Implement PHP & MySQL Pagination with a 10-Record Limit per Page?

PHP 및 MySQL 페이지 매김: 페이지에 레코드 표시

페이지 매김은 대규모 데이터 세트를 관리하고 사용자 경험을 향상시키기 위한 웹 개발에서 중요한 기술입니다. 이 기사에서는 페이지당 10개의 결과 제한을 설정하여 PHP 및 MySQL에서 결과를 페이지로 매기는 방법을 살펴보겠습니다.

MySQL 쿼리 만들기

MySQL 레코드를 가져오는 쿼리에는 적절한 LIMIT 절이 포함되어야 합니다. 예:

SELECT *
FROM 'redirect'
WHERE 'user_id' = \''.$_SESSION['user_id'].' \'
ORDER BY 'timestamp'
LIMIT 0, 10;

페이지 매김을 위한 PHP 코드

PHP에서 페이지 매김을 구현하려면 현재 페이지를 결정하고 현재 페이지의 시작 인덱스를 계산해야 합니다. , 데이터베이스의 총 레코드 수를 가져오고 탐색을 만듭니다. 링크.

<?php
// Connect to your MySQL database

// Set the number of results per page
$perPage = 10;

// Get the current page number (if not set, assume page 1)
$page = (isset($_GET['page'])) ? (int)$_GET['page'] : 1;

// Calculate the start index for the current page
$startAt = $perPage * ($page - 1);

// Get the total number of records
$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);

// Create navigation links
$links = "";
for ($i = 1; $i <= $totalPages; $i++) {
  $links .= ($i != $page) 
            ? "<a href='index.php?page=$i'>Page $i</a> "
            : "$page ";
}

// Get the records for the current page
$query = "SELECT * FROM 'redirect'
WHERE 'user_id' = \''.$_SESSION['user_id'].' \'
ORDER BY 'timestamp' LIMIT $startAt, $perPage";
?>

기록 및 페이지 매기기 링크 표시

결과가 있으면 인터페이스에 표시할 수 있습니다. 또한 $links 변수를 에코하여 다양한 페이지에 대한 탐색 링크를 표시할 수 있습니다.

위 내용은 페이지당 10개 레코드 제한으로 PHP 및 MySQL 페이지 매김을 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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