我是靠谱客的博主 痴情枕头,最近开发中收集的这篇文章主要介绍mysql 数据重复提交数据_关于重复提交数据问题的解决方案,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在做前端开发的时候,我们经常会遇到提交信息到后台的需求。在做这个需求中,可能很多人都遇到过这个问题:那就是当用户点击提交按钮提交数据的时候,用户没有看到及时的交互反馈,用户会再次或者多次点击按钮提交数据,如果这个问题没有被避免,那么后台接收到的数据很可能是相同的重复数据。那怎么来解决这个问题呢?从技术的角度来说,主要有以下两个方案。

1. 第一个方案:从前端的角度来说。

当要提交的各种数据都验证正确合法后,用户点击按钮提交数据。给用户以提示信息,提示用户耐心等待。同时按钮的对应提交数据的事件和事件对应的事件处理函数。这个解决方案的伪代码可能是这样的。

functionsubmitUserInfo(userInfoOpts) {

$.ajax({

url:"xxxxx",

data:{

name:userInfoOpts.userName,

realName:userInfoOpts.realName,

gender:userInfoOpts.gender

},

beforeSend:function(){//解绑事件,用户再次点击就不会对用户的操作有任何反应

$submitBtn.off("click");

alert("数据已经提交,请耐心等待");

},

success:function(){

alert("数据提交成功!");//再次绑定事件,上一次数据提交到服务器后,用户可以再次提交数据

$submitBtn.bind("click",submitUserInfo);

}

})

}var $submitBtn = $("#submitUserInfoBtn");//数据验证成功后,提交数据

$submitBtn.bind("click",submitUserInfo);

2. 从前后端配合的角度来解决问题:

服务器端渲染页面的时候,放置一个隐藏的域,隐藏域里面放置 token 值。这样页面刚进来的时候就有一个 token值。前台提交数据的时候,一并把 token 提交到后台。后台收到 token 的时候 判断是否和上一次提交的 token 一致,如果一致,则证明是重复提交。

服务器端在每次收到数据的时候,都会收到一个  token。服务器再返回一个 token 到客户端,客户端的 token 值被重写成新的 token 值,这样每次提交数据的时候,就可以提交新的 token 到服务器端。便于服务器端做判断。这个实现的伪代码是这样的。

html 代码 示例:

          充值金额元

最后

以上就是痴情枕头为你收集整理的mysql 数据重复提交数据_关于重复提交数据问题的解决方案的全部内容,希望文章能够帮你解决mysql 数据重复提交数据_关于重复提交数据问题的解决方案所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部