【发布时间】:2011-08-08 14:07:57
【问题描述】:
我有一个将数据插入数据库的 html 表单。我刚刚构建它..它非常基础,因为我这样做只是为了学习。在这样做时,我看到我可以点击后退浏览器按钮并再次发布..再一次..再一次..它一直在写入数据库。
我曾在网站上看到我尝试重新提交信息,但它告诉我必须等待 60 秒(或其他任何时间)。这是解决此问题的首选方法吗?如果是这样,如何去实施它?
或者也许你会以不同的方式处理它?
【问题讨论】:
-
您希望用户能够重新提交吗?如果不是,则在提交后发送一个“位置”http 标头以将用户重定向到新页面。这样他们就无法刷新或返回并重新提交数据。
-
这不会阻止他们再次导航到表单并再次提交。
-
@Andi 为什么你的头像是被谋杀的女孩的照片?
-
@Dan:非常正确,但是问题的提出方式让我相信这不是关于 60 秒,而是关于重新提交已经发布的数据。