当前位置:首页 > PHP

php 实现后退

2026-01-30 03:12:45PHP

实现 PHP 页面后退功能的方法

使用 JavaScript 的 history.back() 方法
在 PHP 页面中嵌入 JavaScript 代码,调用浏览器的历史记录返回功能。

echo '<button onclick="history.back()">返回上一页</button>';

或直接通过 PHP 输出 JavaScript 代码:

php 实现后退

echo '<script>history.back();</script>';

通过 HTTP 头信息重定向
利用 header() 函数结合 $_SERVER['HTTP_REFERER'] 实现后退(需确保 Referer 存在):

if (isset($_SERVER['HTTP_REFERER'])) {
    header("Location: " . $_SERVER['HTTP_REFERER']);
    exit;
} else {
    echo "无法获取上一页地址";
}

使用 Session 记录上一页 URL
在跳转前存储当前页面的 URL 到 Session 中,后续通过读取 Session 实现后退:

php 实现后退

session_start();
$_SESSION['previous_page'] = $_SERVER['REQUEST_URI'];
// 后退时调用
if (isset($_SESSION['previous_page'])) {
    header("Location: " . $_SESSION['previous_page']);
    exit;
}

通过表单或链接传递返回地址
在页面跳转时显式传递上一页的 URL 参数:

// 跳转时添加来源参数
$back_url = urlencode($_SERVER['REQUEST_URI']);
echo "<a href='previous_page.php?back=$back_url'>返回</a>";
// 接收后退请求时处理
if (isset($_GET['back'])) {
    header("Location: " . urldecode($_GET['back']));
}

注意事项

  • history.back() 依赖浏览器实现,可能受安全策略限制。
  • HTTP_REFERER 不可靠,某些浏览器或插件会禁用它。
  • 使用 Session 或参数传递时需注意 URL 安全性,避免开放重定向漏洞。

标签: php
分享给朋友:

相关文章

php 实现接口

php 实现接口

PHP 实现接口的方法 在 PHP 中,接口(Interface)用于定义一组方法的规范,而不包含具体的实现。类可以实现(implement)接口,并必须实现接口中定义的所有方法。 定义接口 接口通…

php实现文件的下载

php实现文件的下载

PHP 实现文件下载的方法 在 PHP 中实现文件下载功能通常需要设置正确的 HTTP 头信息,并输出文件内容。以下是几种常见的实现方式: 使用 header() 函数强制下载 通过设置 Conte…

php 实现秒杀

php 实现秒杀

PHP 实现秒杀的关键技术 秒杀系统需要解决高并发、超卖、性能瓶颈等问题。以下是实现秒杀的核心方案: 使用 Redis 预减库存 将商品库存提前加载到 Redis 中,通过原子操作保证库存准确性:…

php mvc 实现

php mvc 实现

PHP MVC 实现方法 MVC(Model-View-Controller)是一种设计模式,用于分离应用程序的逻辑、数据和界面。以下是实现PHP MVC框架的关键步骤。 目录结构 创建以下目录结构…

php实现推送消息推送消息

php实现推送消息推送消息

PHP 实现消息推送的方法 使用 WebSocket 实现实时推送 WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议,适合实现实时消息推送。 安装 Ratchet 库(WebSo…

php实现支付宝支付

php实现支付宝支付

支付宝支付集成步骤 准备工作 在开始集成支付宝支付前,确保已注册支付宝开放平台账号并完成企业实名认证。创建应用后获取APPID、应用私钥和支付宝公钥。 配置支付宝SDK 通过Composer安装支付…