PHP中有什么方法可以检测请求是否来自浏览器后退按钮

Is there any way in PHP to detect if request is coming from browser back button?

本文关键字:是否 浏览器 按钮 请求 检测 什么 方法 PHP      更新时间:2023-09-26

我正在开发处理购物车的wordpress插件。我有两页,结帐和感谢页面。购物车中的商品是通过链接添加的,例如 https://mysite.com/checkout/?action=add&subscription=23。我正在使用会话在结帐页面上将商品添加到购物车。

假设如果我添加三个项目:https://mysite.com/checkout/?action=add&subscription=1https://mysite.com/checkout/?action=add&subscription=2https://mysite.com/checkout/?action=add&subscription=3(浏览器地址栏中的最后一个链接(

当用户在结帐页面上结帐时,用户将被重定向到感谢页面。我的浏览器后退按钮有问题,如果用户按后退按钮谢谢,他将再次重定向到结帐页面,并再次添加最后一项(https://mysite/checkout/?action=add&subscription=3(,因为这是浏览器地址栏中的最后一个链接。

如何防止浏览器在用户后退按钮按下感谢页面上再次添加最后一项?PHP中有什么方法可以检测请求是否来自浏览器后退按钮?我认为,有没有办法使用会话来处理它?

请指导我是否有其他合适的方法来实现这一点?谢谢

处理这个问题的最佳方法是使用 POST/REDIRECT/GET 模式。

使用后重定向获取设计模式。

换句话说,处理的脚本不是显示结果的脚本。

你可以用 $_SERVER['HTTP_REFERER']以查看您的父页面,并检测用户是否来自感谢页面