php - 我想通过获取 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 页。
解决方案
尝试这个;
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));
}
推荐阅读
- python - 流光小部件依赖
- php - 如何优化这个使用 ajax 调用的 php 函数?
- python - Django - 在管理员中内联搜索用户
- node.js - 表达如何从 uri 段访问参数
- actions-on-google - 如何将系统意图(例如 actions.intent.MEDIA_STATUS_FINISHED)添加到 Google Assistant Action Builder
- c++ - SDL:在事件循环的每次迭代中定义事件结构是否效率低下?
- spring-cloud-stream - 如何从 Spring Cloud 数据流任务将消息发布到目的地?
- r - If then else 在 dplyr 包中
- java - 在一个 for 循环中合并区间
- regex - 正则表达式包围包含字符串“;@tab;@tab;@tab;”的文本 带引号