PHP:当按下Back时,停止意外重新处理表单

phi*_*reo 4 php forms submission back form-submit

当用户点击"后退"按钮时,停止重新处理表单的最佳方法是什么?

我正在关注Post/Redirect/Get模式,所以如果按下F5我没有问题,但后退按钮仍然提供重新提交表单的机会.如果此表单是信用卡处理页面,则这很糟糕.

这里有人问过这个问题,但是措辞和答案质量很差,并没有完全针对这个问题.

我有form.php提交给自己.如果提交时输入数据中没有错误,则将用户重定向到form_thanks.php.回击(和"发送"或"重新提交")一次重新提交form.php的(BAD!),然后带来了他们回到form_thanks.php.

如果可能,还请包括不涉及使用会话的解决方案.

Whi*_*tey 7

我会以不同的方式做到这一点.使用随机字符串作为值放置隐藏输入,并在提交时将该随机字符串存储在会话中.设置一个简单的检查,看看他们是否已经发布了它,以及他们是否接受了输入.