形成双重发布

时间:2010-06-25 19:54:10

标签: html forms

据我所知,双职位一直是表格的问题。

我正在使用令牌服务器端方法来处理这个问题,但我发现它似乎无法正常工作。我将系统设置为为每个表单创建一个唯一的标记,然后在发布后将该标记记录在SESSION中。

SESSION实际上是用户发布的每个表单的数组(在SESSION到期时重置),并且在每次提交时,系统会检查in_array()以查看该表单是否已经发布...如果是这样,它就会阻止它们。

似乎在制作中,系统无法足够快地将已完成的令牌记录到SESSION中,以便双击提交按钮。因此,重新访问旧页面可以很好地处理,但是立即双击提交会产生问题。

我不确定如何解决此问题。

3 个答案:

答案 0 :(得分:1)

如何在点击后立即禁用提交按钮(通过Javascript,使用onClick处理程序)?这显然无法解决所有问题,但它可能涵盖系统速度不足以将令牌记录到SESSION中的情况。

答案 1 :(得分:0)

我有这个问题以及我正在为之工作的公司内部的东西。根据我的经验,人们多次点击,因为他们认为没有发生任何事情。我所做的是删除提交表单的能力,并显示某种消息,说明正在处理信息。

弹出div并且只是禁用按钮效果很好。

答案 2 :(得分:0)

我有同样的问题,我用jQuery解决。 我在提交按钮中添加了类singleClick,我想单击一下,还添加了一些javascript代码   

<input type="submit" class="singleClick" value="Send Request">
   
    $(function () {
        $('.singleClick').on('click', function () {
            $(this).attr('disabled', true);
        });
    });