首页 > 解决方案 > 我想通过获取 cat 变量按类别进行分页

问题描述

正在显示页数,但我在第 2 页得到与第 1 页相同的记录

我试图写 cat 变量,但它不起作用

<?php

include("connection.php");

if(isset($_GET['page']))
{
    $page = $_GET['page'];
}
else
{
    $page = 1;
}

$productPerPage = 6;
$startNum = ($page - 1)* $productPerPage ; // (2-1) * 3 

require_once("connection.php");

$result = mysqli_query($con,"select * from products where category='".$_GET['cat']."' limit ".$startNum.",".$productPerPage) or die(mysqli_error($con));

if(isset($_GET['cat']))
{
    $result = mysqli_query($con,"select * from products where category='".$_GET['cat']."'") or die(mysqli_error($con));
}
?>
<?php

$result = mysqli_query($con,"select * from products where category='".$_GET['cat']."'");
$count = mysqli_num_rows($result);
$noOfPages = ceil($count / $productPerPage);
echo '<p>';
for($i = 1;$i<=$noOfPages;$i++)
{
    echo'<li><a href="index.php?page='.$i.(isset($_GET['cat'])?'&cat='.$_GET['cat']:'').'">'.$i.'</a></li>';

}

?>
</div>

相同的数据出现在第 1 页和第 2 页。

标签: php

解决方案


尝试这个;

if(isset($_GET['cat'])){
    $result = mysqli_query($con,"select * from products where category='".$_GET['cat']."' limit $startNum,$productPerPage") or die(mysqli_error($con));
}else{
    $result = mysqli_query($con,"select * from products limit $startNum, $productPerPage") or die(mysqli_error($con));

}

推荐阅读