当前位置: 首页 > 面试题库 >

刷新页面以避免提交的最佳方法

董光霁
2023-03-14
问题内容

我认为这个问题经常出现在Web应用程序开发中。但是,我将尝试详细解释我的问题。

我想知道如何纠正这种行为,例如,当我有如下代码块时:

<?
    if (isset($_POST['name'])) {
        ... operation on database, like to insert $_POST['name'] in a table ...
        echo "Operation Done";
        die();
    }

?>

<form action='page.php' method='post' name="myForm">
    <input type="text" maxlength="50" name="name" class="input400" />
    <input type="submit" name="Submit" />
</form>

提交表单后,数据将插入数据库中,并产生消息 “完成操作” 。然后,如果刷新页面,则数据将再次插入数据库。

如何避免这个问题?任何建议将不胜感激:)


问题答案:

创建动作后不要显示响应;操作完成后重定向到另一个页面。如果有人刷新,则他们刷新的是您重定向到的GET请求页面。

// submit
// set success flash message (you are using a framework, right?)
header('Location: /path/to/record');
exit;


 类似资料:
  • 问题内容: 当按下发送按钮而字段中没有任何数据时,如何防止页面刷新? 验证设置工作正常,所有字段均变为红色,但随后页面立即刷新。我对JS的知识比较基础。 我特别认为底部的功能是“不良”。 的HTML JS 问题答案: 您可以阻止表单提交 当然,在该函数中,您可以检查是否有空白字段,如果看起来不正确,将停止提交。 没有jQuery:

  • 问题内容: 有人可以告诉我使用 jquery来显示成功提交表单 而不刷新页面 的教程。传递邮件时,在gmail上会发生类似的事情,黄色的叠加层显示邮件已传递,然后淡出。 我希望根据表单提交的结果显示消息。 问题答案: 好的…类似这样的东西…但是我没有尝试过…所以像教程一样使用它。您也可以使用json js: HTML: form_process.php

  • 所以,我是ajax新手,我正在尝试使用ajax和jquery提交表单,我想我已经弄清楚了服务器端的逻辑,因为当我加载页面时,它会自动提交,页面会很快刷新。空白表单将进入数据库,尽管其中有很多表单,因为页面会不断提交每次刷新。所以我认为我的服务器端正在工作,但我不知道该怎么做,不仅要阻止它刷新,还要使用html表单中的提交按钮进行提交。我在html页面中使用了thymeleaf。 这是我的html表

  • 本文向大家介绍javascript实现避免页面按钮重复提交,包括了javascript实现避免页面按钮重复提交的使用技巧和注意事项,需要的朋友参考一下 绑定事件即可调用 以上就是本文的全部内容了,小伙伴们拿到自己项目中测试下吧。

  • 问题内容: 当按下发送按钮而字段中没有任何数据时,如何防止页面刷新? 验证设置工作正常,所有字段均变为红色,但随后页面立即刷新。我对JS的知识比较基础。 我特别认为底部的功能是“不良”。 的HTML JS 问题答案: 您可以阻止表单提交 当然,在该函数中,您可以检查是否有空白字段,如果看起来不正确,将停止提交。 没有jQuery:

  • 问题内容: 我的表单类似于以下内容: 我是AJAX的新手,我要完成的工作是当用户单击“提交”按钮时,我希望脚本在后台运行而不刷新页面。 我尝试了类似下面的代码的方法,但是,它似乎仍然像以前一样提交表单,而不像我所需要的那样(在幕后): 如果可能的话,我想获得使用AJAX实施此功能的帮助, 提前谢谢了 问题答案: 您需要阻止默认操作(实际提交)。