You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP多页表格操作刷新后保留滚动位置与当前页码问题咨询

问题根源

你遇到的跳转后始终回到第1页的问题,是两个语法错误共同导致的:

  • URL参数拼接错误,多个参数之间应该用&分隔而不是重复用?
  • validation.php的逻辑和重定向语法存在错误

修复步骤

1. 修改index.php中的Valider按钮链接

找到表格中Valider按钮的a标签代码,将第二个参数前的?替换为&:

<!-- 原错误代码 -->
<a href="validation.php?id=<?php echo $data['id']; ?>?page=<?php echo $page ?>">Valider</a>

<!-- 修改后正确代码 -->
<a href="validation.php?id=<?php echo $data['id']; ?>&page=<?php echo $page ?>">Valider</a>

2. 重写validation.php代码

原代码中冗余引入了index.php、缺少page参数获取逻辑、重定向header语法错误,完整修正后的代码如下:

<?php
include 'db.inc.php';

// 获取传入的参数
$id = $_GET['id'];
$page = isset($_GET['page']) ? intval($_GET['page']) : 1;

// 转义id避免SQL注入,建议后续改为预处理语句更安全
$safe_id = mysqli_real_escape_string($db, $id);
$edit = mysqli_query($db, "update `database` set B='Validé' where id='$safe_id'");

if($edit)
{
    mysqli_close($db);
    // 补全Location头前缀,正确跳转
    header("Location: index.php?page=".$page);
    exit;
}
else
{
    echo mysqli_error($db);
}
?>

额外优化建议

原有代码存在SQL注入风险,建议将更新操作改为mysqli预处理语句写法,避免被恶意攻击。

内容的提问来源于stack exchange,提问作者Sans

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 09:15:03