社区
Web 开发
帖子详情
大家都来说说防止重复提交的各种招。。
xuexijava
2009-08-20 10:37:05
加精
如题。。。。
1、点击按钮提交
2、F5或刷新页面
3、Ctrl+N后提交
等等情况
...全文
2838
110
打赏
收藏
大家都来说说防止重复提交的各种招。。
如题。。。。 1、点击按钮提交 2、F5或刷新页面 3、Ctrl+N后提交 等等情况
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
110 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chailiangyu
2012-03-28
打赏
举报
回复
提交完成后,将页面刷新一次。
再次提交之前,判断下。
wuyigong111
2012-03-27
打赏
举报
回复
我总结的几点:
1、Struts 的token机制
2、在页面JS上全局变量计数器,判断本页是否已经提交该表单,如果已经提交了则不让提交,可以给出提示。
3、提交后数据库有所变化,如果不是模态窗口并且没用 token 机制所以无法防止多个页面的提交,则直接在后台判断,如果数据库已经有所变化,则跳转到新页面给出提示。
sunhao901001
2012-03-27
打赏
举报
回复
我做的是提交之后到成功页面,按F5不停刷新,不停入库,想用令牌做,但是用的框架是封装stratus2框架,令牌被封没了。提交的字段有没有唯一的,有的话就在action拿唯一值去表中查询,看有没有,有就返回错误页面。
FristFlay
2011-05-09
打赏
举报
回复
我觉得呢,用js是真的不安全!
GavinXu1980
2010-09-17
打赏
举报
回复
控制重复提交无非就是两种方式:客户端控制 、服务器端控制
1、客户端控制无非就是使用 js 灰屏、灰按钮、禁用浏览器按钮及功能键、过滤鼠标键盘输入
这些功能虽然有效 但是很多地方也是无法生效的,毕竟是在客户端的东西,可以比如Firfox就可以调试js脚本,所以安全级别还是差一些
2、服务器段控制,也就是通常所说的Token,即每次都给客户端一个随机编号,提交后与服务器匹配。比较经典的就是Struts使用的Token机制了。
_Nick_
2010-09-08
打赏
举报
回复
- - 重定向就不会有这个问题了。 转发引起的,这是根源
zings
2010-04-09
打赏
举报
回复
mark。。
pxs7758521
2010-04-07
打赏
举报
回复
提醒我了。。
hexiaoliang
2010-04-01
打赏
举报
回复
点之后马上刷新
dgqbcht
2009-10-22
打赏
举报
回复
这个简单,提交完把按钮 display:none掉
牛仔十三
2009-10-22
打赏
举报
回复
学习了
dyl999
2009-09-02
打赏
举报
回复
js
function hidbutton()
{
if(window.document.readyState!=null && window.document.readyState!='complete')
{
//判断页面是否执行完毕
//alert("数据加载中,请您稍等!");
//document.getElementById("btnRechargeList").display=false;
//查询按钮隐藏
document.getElementById("btnRechargeList").style.display="none";
//显示提示
document.getElementById("spanMsg").innerHTML="数据加载中,请您稍等!";
return false;
}
else
{
//alert("1");
//提示消息隐藏
document.getElementById("spanMsg").visible=false;
return true;
}
}
按钮应用
<asp:Button ID="btnRechargeList" runat="server" Text="查看消费清单" OnClientClick="hidbutton() OnClick="btnRechargeList_Click" /> <span id="spanMsg" style="color: red"> </span> </td>
dyl999
2009-09-02
打赏
举报
回复
js
function hidbutton()
{
if(window.document.readyState!=null && window.document.readyState!='complete')
{
//判断页面是否执行完毕
//alert("数据加载中,请您稍等!");
//document.getElementById("btnRechargeList").display=false;
//查询按钮隐藏
document.getElementById("btnRechargeList").style.display="none";
//显示提示
document.getElementById("spanMsg").innerHTML="数据加载中,请您稍等!";
return false;
}
else
{
//alert("1");
//提示消息隐藏
document.getElementById("spanMsg").visible=false;
return true;
}
}
按钮应用
<asp:Button ID="btnRechargeList" runat="server" Text="查看消费清单" OnClientClick="return btnCheck()" OnClick="btnRechargeList_Click" /><span id="spanMsg" style="color: red"></span></td>
chwoyaofei
2009-08-26
打赏
举报
回复
采用重定向好像也可防止重复提交
chwoyaofei
2009-08-26
打赏
举报
回复
在action中:
if( !isTokenValid(request,true) ){
System.out.println("重复提交!");
saveToken( request );
request.setAttribute("","");
return mapping.findForward("");
}
saveToken( request );
在页面上控制:
使用js将提交按钮屏蔽
xjbx
2009-08-26
打赏
举报
回复
[Quote=引用 92 楼 javadaydayup 的回复:]
我用的是最简单的方法,当点完提交按钮的时候,把这个按钮“灰掉”,即不可编辑模式
[/Quote]
恐怕这个也不简单
javadaydayup
2009-08-26
打赏
举报
回复
我用的是最简单的方法,当点完提交按钮的时候,把这个按钮“灰掉”,即不可编辑模式
zhangshuling
2009-08-26
打赏
举报
回复
struts 不用时令牌,可以这样
不用return mapping.findForward("....");
用 response.sendRedirect("....."); return null;
我的愚见...
BJTUMach
2009-08-26
打赏
举报
回复
学习
lxf001002
2009-08-26
打赏
举报
回复
[Quote=引用 78 楼 kala197 的回复:]
引用 1楼到最后1000楼 我的回复哈哈 的回复:
很好玩
哈哈 引用的漏洞
[/Quote]
这家伙真无聊
加载更多回复(90)
防止
ajax
重复
提交
首先
说
说
防止
重复
点击
提交
是什么意思。 我们在访问有的网站,输入表单完成以后,单击
提交
按钮进行
提交
以后,
提交
按钮就会变为灰色,用户不能再单击第二次,直到重新加载页面或者跳转。这样,可以一定程度上
防止
...
谈谈
防止
重复
提交
首先
说
说
防止
重复
点击
提交
是什么意思。 我们在访问有的网站,输入表单完成以后,单击
提交
按钮进行
提交
以后,
提交
按钮就会变为灰色,用户不能再单击第二次,直到重新加载页面或者跳转。这样,可以一定程度上
防止
...
ajax
提交
防重,jQuery如何
防止
Ajax
重复
提交
首先
说
说
防止
重复
点击
提交
是什么意思。我们在访问有的网站,输入表单完成以后,单击
提交
按钮进行
提交
以后,
提交
按钮就会变为灰色,用户不能再单击第二次,直到重新加载页面或者跳转。这样,可以一定程度上
防止
用户...
如何
防止
订单
重复
提交
看了网上很多人
说
的,方案很多,下面来
说
说
自己的想法。 1.用户每次进入
提交
订单页面的时候,调用发号器接口,在
提交
订单页面生成唯一的序号 2.用户
提交
订单的时候,传递该序号,然后后端通过redis的原子方法++,做...
谈谈
防止
重复
点击
提交
首先
说
说
防止
重复
点击
提交
是什么意思。 我们在访问有的网站,输入表单完成以后,单击
提交
按钮进行
提交
以后,
提交
按钮就会变为灰色,用户不能再单击第二次,直到重新加载页面或者跳转。这样,可以一定程度上
防止
...
Web 开发
81,092
社区成员
341,718
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章