在PHP中是否有任何方法可以检测请求是否来自浏览器后退按钮?

时间:2012-05-14 08:50:24

标签: php javascript wordpress

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

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

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

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

如果有其他合适的方法可以指导我吗?感谢

3 个答案:

答案 0 :(得分:3)

处理这种情况的最佳方法是使用POST/REDIRECT/GET模式。

答案 1 :(得分:2)

使用Post Redirect Get设计模式。

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

答案 2 :(得分:0)

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