您现在的位置是:网站首页> 编程资料编程资料
防止用户将表单重复提交的方法汇总纯html+css实现Element loading效果纯html+css实现奥运五环的示例代码HTML+CSS实现导航条下拉菜单的示例代码html+css实现滚动到元素位置显示加载动画效果纯html+css实现打字效果html+css实现环绕倒影加载特效html输入两个数实现加减乘除功能html中显示特殊符号(附带特殊字符对应表)关于html选择框创建占位符的问题html css3不拉伸图片显示效果
2021-08-30
1371人已围观
简介 这篇文章主要介绍了4种防止用户将表单重复提交的方法,都是平时项目中经常用到的方法,小伙伴们根据自己的需求,自由选择吧
表单重复提交是在多用户Web应用中最常见、带来很多麻烦的一个问题。有很多的应用场景都会遇到重复提交问题,比如:
点击提交按钮两次。 点击刷新按钮。 使用浏览器后退按钮重复之前的操作,导致重复提交表单。 使用浏览器历史记录重复提交表单。 浏览器重复的HTTP请求。
几种防止表单重复提交的方法
1.禁掉提交按钮。表单提交后使用Javascript使提交按钮disable。这种方法防止心急的用户多次点击按钮。但有个问题,如果客户端把Javascript给禁止掉,这种方法就无效了。
我之前的文章曾说过用一些Jquery插件效果不错。
2.Post/Redirect/Get模式。在提交后执行页面重定向,这就是所谓的Post-Redirect-Get (PRG)模式。简言之,当用户提交了表单后,你去执行一个客户端的重定向,转到提交成功信息页面。
这能避免用户按F5导致的重复提交,而其也不会出现浏览器表单重复提交的警告,也能消除按浏览器前进和后退按导致的同样问题。
3.在session中存放一个特殊标志。当表单页面被请求时,生成一个特殊的字符标志串,存在session中,同时放在表单的隐藏域里。接受处理表单数据时,检查标识字串是否存在,并立即从session中删除它,然后正常处理数据。
如果发现表单提交里没有有效的标志串,这说明表单已经被提交过了,忽略这次提交。
这使你的web应用有了更高级的XSRF保护。
4.在数据库里添加约束。在数据库里添加唯一约束或创建唯一索引,防止出现重复数据。这是最有效的防止重复提交数据的方法。
以上就是这4种方法的介绍了,小伙伴们如果有更好的解决方法,也请告之,本文将持续更新。
相关内容
- 利用HTML实现限制ip的投票网站作弊方案纯html+css实现Element loading效果纯html+css实现奥运五环的示例代码HTML+CSS实现导航条下拉菜单的示例代码html+css实现滚动到元素位置显示加载动画效果纯html+css实现打字效果html+css实现环绕倒影加载特效html输入两个数实现加减乘除功能html中显示特殊符号(附带特殊字符对应表)关于html选择框创建占位符的问题html css3不拉伸图片显示效果
- html禁止清除input文本输入缓存的两种方法HTML5单选框、复选框、下拉菜单、文本域的实现代码HTML5 文件域+FileReader 分段读取文件并上传到服务器html列表框、文本域、文件域的示例代码
- 利用HTML、CSS 实现带表情的评论框的制作教程HTML中利用div+CSS实现简单的箭头图标的代码css 11种方法实现一个tips带有描边的小箭头css实现带箭头和圆点的轮播可自定义箭头样式的CSS3气泡提示框CSS3制作可自定义配置箭头的气泡提示框效果源码基于CSS实现带阴影和小箭头的黑色风格下拉菜单效果纯CSS3实现漂亮的input输入框动画样式库(Text input love)CSS实现让同一行文字和输入框对齐的方法CSS实现带箭头的提示框效果【示例代码】
- 简单掌握HTML中水平线标注与代码注释的用法HTML教程:html水平线段HTML <!--...--> 注释标签的深层次作用分析Html注释 Html中标记文字注释的符号css注释和html注释用法及应用范围介绍html中块注释的使用详细介绍
- 详解XHTML中的标题标签与段落标签的使用关于XHTML的H1标记的位置XHTML中的常用标签整理HTML与XHTML、以及HTML4与HTML5标签之间的区别简介xHTML与HTML标签的写法有哪些不同
- XHTML中的常用标签整理HTML与XHTML、以及HTML4与HTML5标签之间的区别简介xHTML与HTML标签的写法有哪些不同网站优化seo汇总XHTML标签对搜索引擎的权重XHTML标签语义化介绍XHTML标签的嵌套规则分析Xhtml下不常用却很有用的标签总结XHTML代码常见的应用问题XHTML标签在CSS中对应的属性及用法常用的XHTML标签的使用技巧介绍XHTML CSS写出正规的BLOG
- 用HTML和CSS打造属于自己的暖男“大白”纯HTML5+CSS3制作图片旋转一款利用html5和css3动画排列人物头像的实例演示2013年五大主流浏览器 HTML5 与 CSS3 兼容性大比拼一款纯css3实现的鼠标经过按钮特效教程HTML5时代CSS设置漂亮字体取代图片HTML5 CSS3打造相册效果附源码下载在HTML文档中嵌入CSS的三种常用方式html+css实现登录界面附效果图html、css 禁止文字自动换行属性word-break使用css美化html表单控件详细示例(表单美化)
- Html+css实现纯文字和带图标的按钮css图标与文字对齐的两种实现方法css控制文字前的小图标具体写法纯CSS实现取字符串的第一个字符实现文字图标功能
- HTML对于元素水平垂直居中的探讨利用CSS3的flexbox实现水平垂直居中与三列等高布局Flexbox制作CSS布局实现水平垂直居中的简单实例浅析CSS实现水平垂直同时居中的5种思路让DIV水平垂直居中的两种完美方法推荐CSS解决页面图片水平垂直居中问题的方法全面总结使用CSS实现水平垂直居中效果的方法CSS定位“十字架”之水平垂直居中关于html水平垂直居中的问题小结DIV或者DIV里面的图片水平与垂直居中的方法
- 不可不知的HTML优化技巧浅谈利用缓存来优化HTML5 Canvas程序的性能使用分层画布来优化HTML5渲染的教程常用HTML meta 标签属性(网站兼容与优化需要)css(html)背景图优化合并技巧详解html5摇一摇代码优化包括DeviceMotionEvent等等HTML输入框优化以此来提高用户体验和易用度CSS(html)背景图优化合并深入探讨了解html页面的渲染过程以备学习前端的性能优化(续)了解html页面的渲染过程以备学习前端的性能优化HTML优化加快网页速度
