jsp servlet如何防止重复提交

当用户提交的时候(第一次页面提交),系统首先需要生成一个随机号,在服务器端进行保存并在jsp表单中绑定这个生成的随机号(可以理解),当jsp表单提交时(这是什么提交,另一... 当用户提交的时候(第一次页面提交),系统首先需要生成一个随机号,在服务器端进行保存并在jsp表单中绑定这个生成的随机号(可以理解),当jsp表单提交时(这是什么提交,另一次页面提交?)服务器端接收用户提交的这个随机号然后与服务器端保存的随机号进行对比(不理解了,这里帮我解释解释吧),如果随机号相同的话,执行提交操作,并把服务器端保存的随机号销毁。如果不同的话提示用户重复提交。 展开
 我来答
3224756
2012-04-17 · TA获得超过795个赞
知道小有建树答主
回答量:239
采纳率:0%
帮助的人:239万
展开全部
第一句话有问题:
“当用户提交的时候”改为“当用户访问提交页面”,全文其实只提了一次提交。
全文意思是当用户访问提交页面,在服务器生成随机号并保存在表单的隐藏域中,用户填写完毕点击提交按钮,服务器比对随机号,服务器存在此随机号则是第一次提交,可以执行正常操作,然后销毁此随机号。如果此时用户再次点击提交,则服务器端的随机号已经被销毁了,就可以判断出是重复提交了。
追问
全文意思是当用户访问提交页面,在服务器生成随机号并保存在表单的隐藏域中,用户填写完毕点击提交按钮,服务器比对随机号 ......
感觉这个过程,是不是有问题,原本应该是“我”先点击页面提交按钮,成功进入一个页面后在进行F5刷新,之后出现问题....读不明白了.....
追答
你按F5刷新,点重试,就是重复提交了。由于上一次提交已经完成,随机号在服务器端已经被销毁。所以这次刷新提交服务器就可以知道是重复提交的了
卡妙Q
2012-04-17
知道答主
回答量:35
采纳率:0%
帮助的人:7.1万
展开全部
当jsp表单提交时(这是什么提交,另一次页面提交?) --- 重复提交,
如果随机号相同的话,提示用户重复提交。
如果随机号不同的话,执行提交操作。
或者(看括号):
当用户提交的时候(进入到需要提交信息的页面),系统首先需要生成一个随机号,在服务器端进行保存并在jsp表单中绑定这个生成的随机号,
当jsp表单提交时(第一次页面提交)服务器端接收用户提交的这个随机号然后与服务器端保存的随机号进行对比(这就简单了,是第一次比对),
如果随机号相同的话,执行提交操作,并把服务器端保存的随机号销毁(第一次提交)。
如果不同的话提示用户重复提交(服务器端随即号已销毁)。
追问
谢谢了
当jsp表单提交时(这是什么提交,另一次页面提交?) --- 重复提交,
如果随机号相同的话,提示用户重复提交。 这是不是应该是 执行提交操作。是不是反了啊?

如果随机号不同的话,执行提交操作。

我读不明白了。不好意思啊
追答
第一种解答,我想了一下,是解释不通的。只有第二种是正确的。当用户提交的时候,即进入到需要提交信息的页面
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
strreamlet
2012-04-17 · TA获得超过222个赞
知道答主
回答量:116
采纳率:0%
帮助的人:49.2万
展开全部
在客户端也可以做控制,就是用户点击提交按钮的时候把提交按钮设置成不可用状态。不过这个方法是不保险的,如果用户强制刷新页面的话会出问题!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式