javascript - PHP 表单代码有时会同时执行两次

标签 javascript jquery duplicates

保存表单时执行类似的代码:

$wpdb->query("DELETE FROM Unit_list WHERE group = '$group_id'");
$order = 1;
$unique_units = array_unique($units);
foreach ($unique_units as $unit) {
    $wpdb->insert("Unit_list", array("unit" => $unit, "group" => $group_id, "sort_order" => $order));
    $order++;
}

一天中会有几次出现重复。

如果表单提交两次,并且有足够的时间让这部分代码每次运行,则不会出现重复项,因为第二次将涉及删除整个第一组。

为了避免重复,此代码必须同时运行两次。

快速双击即可完成此操作,但如果第三次单击速度较慢且不同时,该组将被删除且不涉及重复项。

确定双击是原因后,解决方案是停止检测表单提交按钮的后续点击。

最佳答案

在此处查看客户端 (jQuery) 解决方案:Prevent double submission of forms in jQuery

还有一个 PHP 版本: http://phpsense.com/2006/prevent-duplicate-form-submission/

关于javascript - PHP 表单代码有时会同时执行两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38363728/

相关文章:

javascript - 通过另一个值元素查找元素 ID

javascript - 如何使用 Javascript 检测浏览器窗口何时横向滚动

javascript - 创建具有 API 访问权限的机场数据库

javascript - 如何快速方便地禁用我的代码中的所有 console.log 语句?

javascript - 单击提交按钮时类的 CSS 动画

javascript - jQuery:滚动时多次克隆div

ajax - 当传统和异步为 false 时,对 $.ajax() 感到困惑

arrays - Ruby:删除数组中重复值的所有实例

MySQL删除重复问题

c++ - 如何使存储在 vector 中的对象中的数据唯一?