我有一个PHP班次安排应用程序,其中的流程是:欢迎页面>时间表页面>实际计划页面
在实际计划页面上,用户可以执行所有操作(例如添加班次,移除班次,请求班次),这些都会回发到相同的实际计划页面。我想要的是当他们点击各种“事物”时,“事物”不会添加到浏览器历史记录中。因此,如果他们点击浏览器的后退按钮,他们只需转到时间表列表页面。
我遇到的问题是你可以添加班次A,然后添加班次B,然后点击返回,你试图再次添加班次A.
通常如何避免这种情况?我该怎么办?
答案 0 :(得分:2)
只需将302
重定向从POST处理程序返回到页面,而不是呈现它。
答案 1 :(得分:1)
发布/重定向/获取:
http://en.wikipedia.org/wiki/Post/Redirect/Get
另一种(旧式)选项是:
$_POST
数据到用户不去的文件,例如post_processing.php
在该脚本中,处理其请求的处理,根据需要进行更改,然后将标头重定向回计划页面。
显然正确处理任何人尝试直接访问该文件等。