提交后 HTML 表单两次发布

标签 html forms post

编辑解决方案:

我仍然不知道为什么要进行复式输入,但目前我已经做了一些修改。

我在表单中添加了一个 UID token ,生成了一个 MD5 并将其与数据库条目一起存储。该脚本会检查条目是否已存在。如果是,它会传递条目 ID,如果不是,它会添加一个新的,然后传递最终确认消息的 ID。

幸运的是,该表单甚至加倍了 UID,所以我能够捕获它。如果是两个不同的 UID,那我可能就有问题了,哈哈。

我想给 PeeHaa 加分,因为如果有人发现这个问题,我希望其他人也知道 Post、Redirect 和 Get 是一种很好的编码习惯。 (发布到您的插入脚本,从页面重定向到确认页面,并使用 GET 获取要显示的值)。

之前的内容:

好的,这是非常基础的。

我知道这里已经被问了无数次了,但现有的问题都与我的问题无关。

基本的 HTML 表单。没有花哨的 jQuery 或任何东西。

<form id="attendee_confirm" class="regform" method="post" action="http://url.com/wip/events/register/?">
<input name="attendee[0][first_name]" value="Bruce">  
<input name="attendee[0][last_name]" value="Wayne">


<input type="hidden" name="reg_form" value="true">
<input type="hidden" name="questions" value="true">
<input type="hidden" name="action" value="done_confirming">
<input type="hidden" name="event_id" value="1">

<input type="submit" name="mySubmit" id="mySubmit" value="Confirmed"> 
<input type="button" value=" &lt;-- BACK " onclick="history.go(-1);return false;">

</form>

为什么我的表单两次发布它的数据??我真的不明白这一点。

这是一份确认表格。用户在填写第一份表格后被带到这里,只是为了确认姓名。

第一种形式工作正常,并提供了适当的信息。第二个应该确认并发送电子邮件/流程。

表单发布了两次,我只看到了第二次尝试的输出。我无法从第一个获得任何输出。

因此,如果我尝试将 session token “捕获”添加到表单以 try catch 重复条目,则允许第一次尝试通过,但用户只能看到第二次捕获。

这可能是服务器问题?我的服务器正在运行 ModSecure(最近这让我很生气),我真的很沮丧。当我不应该...

编辑信息:

这发生在所有浏览器上,因此它不是特定于浏览器的。

我也试过将捕获脚本设置为在接收到要处理的信息后重定向,但正如我提到的,数据首先由一些不可见的东西发送,用户看到的输出实际上是第二个数据。不是第一套。一切仍然翻倍。哇..

服务器日志是一个半身像。它发生在一篇文章中。我要仔细检查可能运行两次的脚本.....

最佳答案

您的 ACTION 参数看起来有点古怪。为什么最后有个问号?您的方法是 POST,但您的 ACTION url 暗示该方法是 GET。

关于提交后 HTML 表单两次发布,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12303666/

相关文章:

javascript - 如何正确定位国际象棋游戏的排名和文件标签?

php - 如何通过 jQuery.ajax() 将多个参数传递给 PHP?

jquery - Rails 4 自动完成 gem 问题,遵循示例

css - 我怎样才能让我的提交按钮看起来不像一个按钮?

jquery - 如何使用 Jquery 设置输入字段的 Name 属性?

javascript - Google 脚本 POST 方法与 poloniex api 调用的 JAVA 不匹配

html - 鼠标悬停在 HTML 函数中以弹出或放大图片

javascript - :0 in CSS fixed position mean? 什么是正确的

c# - 如何在 wpf 应用程序中使用 mshtml

json - 使用 Echo 测试 POST 请求(预期输出与实际输出)