php乱七八糟的问题-防止重复提交
2016-07-28 15:49
351 查看
1. 使用JS让按钮在点击一次后禁用(disable)。采用这种方法可以防止多次点击的发生,实现方式较简单。
缺点是若客户端禁止JavaScript脚本,则失效。
2. 在提交成功后执行页面重定向(redirect)。转到提交成功信息页面。
特点:避免F5重复提交,消除浏览器前进和后退按钮可导致的同样问题。
3. 表单隐藏域中存放session(表单被请求时生成的标记)。采用此方法在接收表单数据后,检查此标志值是否存在,先进行删除,然后处理数据; 若不存在,说明已提交过,忽略本次提交。
4. 数据库唯一索引约束(最有效的防止重复数据的方法)。
公司测试亦大傻测出了数据库多条记录的问题,显然是重复插入,于是百度了一下。
上面种是脚本之家提供的方法,本人感觉第一种太low(js大神不要打我),于是使用了第二种,但本人不喜欢自己写页面,但也试了试,太丑,淘汰。采用了第3种解决,第四种看了看,以后再深入吧
缺点是若客户端禁止JavaScript脚本,则失效。
2. 在提交成功后执行页面重定向(redirect)。转到提交成功信息页面。
特点:避免F5重复提交,消除浏览器前进和后退按钮可导致的同样问题。
3. 表单隐藏域中存放session(表单被请求时生成的标记)。采用此方法在接收表单数据后,检查此标志值是否存在,先进行删除,然后处理数据; 若不存在,说明已提交过,忽略本次提交。
4. 数据库唯一索引约束(最有效的防止重复数据的方法)。
公司测试亦大傻测出了数据库多条记录的问题,显然是重复插入,于是百度了一下。
上面种是脚本之家提供的方法,本人感觉第一种太low(js大神不要打我),于是使用了第二种,但本人不喜欢自己写页面,但也试了试,太丑,淘汰。采用了第3种解决,第四种看了看,以后再深入吧
相关文章推荐
- yii2框架-restful的基础入门(二十一)
- tps 与 事务平均响应时间关系对答(转)
- thinkphp 写日志文件
- Thinkphp3.2.3分页使用实例解析
- ZendStudio13 PHP调试环境快速配置
- PHP商品秒杀计时实现(解决大流量方案)
- thinkphp3.2.3 分页代码分享
- Ftp上传文件
- 下载ftp文件
- php读取文件
- PhpStorm 默认快捷键
- PHPCMSV9 乱解读 之 PHPCMS V9的MVC
- YII2项目常用技能知识总结
- php四个常用类封装
- php中 instanceof有什么作用
- PHP,JAVA远程调试
- laravel路由组划分
- thinkphp Db类
- php性能优化
- 关于PHPExcel导出Excel时身份证,数字会导出为科学计数的处理方法