PHP生成token防止表单重复提交2个例子
程序员文章站
2022-04-29 14:54:24
...
防止表单重复提交的解决方案非常的简单,我们下面两个例子都是生成一个随机的token验证用户是不是由我们站内提交并且进行重复验证即可实现了.
在网上搜索了一下有很多站长都这样说的.
1、提交按钮置disabled
当用户提交后,立即把按钮置为不可用状态,这种用js来实现,提交前代码如下:
$("#submit").attr('disabled','true'); $("#submit").val("正在提交,请稍等");
执行后,把按钮置为原来状态,代码如下:
$('#submit ').removeAttr('disabled'); $("#submit ").val("确定提交");
这样只是针对一些简单的前台提交了,如果我们自己做个表单站长提交给我们php逻辑层文件就过滤这那个js了.
过期时间法:用户提交按钮后生成一个token(每次业务提交token 为唯一值)存入session,并设置过期时间,当用户再此提交时,检测token是否一致且是否过期,若一致且没有过期,则认为提交了二次.
例子,代码如下:
方法二,代码如下:
post
mysql php数据库重复记录防止,代码如下:
session过期法有非常重要的一点是一个session设置与提交成功与不成功时的一个session验证了,这个有点像登录一样的如果登录成功了我们要清除session这个原理也差不多.
本文链接:
收藏随意^^请保留教程地址.