提交POST表单时如何防止刷新页面错误?

时间:2011-03-14 03:19:36

标签: php html forms registration

当注册表单使用POST方法提交时,当您刷新同一页面时,它将提示重新提交或重新发送信息。我们如何防止这种情况?

4 个答案:

答案 0 :(得分:8)

使用post-redirect-get。简而言之:

enter image description here

答案 1 :(得分:0)

您可以使用ajax。你保留了放在另一个文件中的相同php代码,并通过ajax发布数据。

答案 2 :(得分:0)

您可以在表单中使用包含一次性随机令牌。第一次提交令牌(使用其他数据)时,将执行操作。相同令牌的未来提交无效(或仅显示相同的确认页面),并且拒绝提交包含空白或无效令牌的提交。

这也可以防范cross-site request forgery

答案 3 :(得分:0)

试试这个:

<?php
if (!empty($_POST)){
?>
    <script type="text/javascript">
        window.location = window.location.href;
    </script>
<?php } ?>

我将它放入prevent_resend.php中,然后在postdata处理完成后将其包含在内。

// ... save data from $_POST to DB
include('prevent_resend.php');
// ... do some other stuff