这里的分页工作正常,但除了分页之外,因为每页的限制是3,假设数据库中总共有8个项目,所以我想显示“ 在第一页上显示 1 t0 3 个 8 项,在第二页上“显示 4 到 6 个 8 项”,依此类推。请帮忙
$recordsLimit = 3;
$page = isset($_GET['page']) ? intval($_GET['page']): 1;
$totalProducts = countProducts($selectedCategoryId);
$totalPages = ceil($totalProducts / $recordsLimit);
$pageNumber = $recordsLimit * ($page - 1);
$products = getProductsByCatId($selectedCategoryId, $pageNumber, $recordsLimit);
<?php if($totalProducts > $recordsLimit) : ?>
<div class="pagination">
<span>Page <?php echo $page.' of '.$totalPages; ?></span>
<?php for($i=1; $i <= $totalPages; $i++) :
if($i == $page) { ?>
<strong><?php echo $i; ?></strong>
<?php } else { ?>
<a href="products.php?cat_id=<?php echo $selectedCategoryId; ?>&page=<?php echo $i; ?>"><?php echo $i; ?></a>
<?php }
endfor; ?>
<?php endif; ?>
最佳答案
尝试:
echo "Showing ".( $page == 1 ? 1 : ($page -1) * $recordsLimit +1 )." to ".($page * $recordsLimit)." item of ".$totalProducts;
关于php - 当前页面上产品的分页计数范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9623183/