当我刷新网页时,如何防止重复提交?

时间:2013-08-13 12:16:25

标签: php forms refresh

我的情况:    在html页面上,我点击按钮提交我的表单。并且在php的过程之后,将结果发送回html页面并带出来。但是当我刷新页面时,弹出窗口并询问我是否再次发送表单数据。但现在我不想让这个窗口出现,我谷歌并获得一些解决方案,重定向或其他,但我的问题将无法解决。我该怎么做我的问题。

注意:我将使用php进程的数据并发回,所以我可以使用重定向方法。                                                                                 谢谢大家。

1 个答案:

答案 0 :(得分:0)

最简单的解决方案是将您的页面分成两部分。

第一部分向浏览器显示页面,但不是提交回您提交到另一页面的同一页面。一旦该页面完成了页面中的数据所需,您将重定向到原始页面。

因此页面xxx.php会在将页面呈现给浏览器之前收集所需的任何数据并且具有<form action="xxx_upd.php"....>

并且页面xxx_upd.php只读取$ _POST或$ _GET并处理输入,一旦完成它会执行header( 'Locaction: xxx.php' );以使第一页重新加载但是因为它已被此过程重置为初始状态刷新页面时不会导致消息,并且不会尝试重新运行xxx_upd.php现在完成的处理