设为首页
收藏本站
用户名
Email
自动登录
找回密码
密码
登录
立即注册
只需一步,快速开始
快捷导航
登录
注册
论坛首页
BBS
建站模版
微站设计
虚拟主机
企业邮箱
博客日志
Blog
搜索
搜索
搜索
热搜
长春
优惠
活动
做网站
本版
帖子
用户
本版
帖子
用户
请
登录
后使用快捷导航
没有帐号?
立即注册
道具
勋章
任务
留言板
设置
我的收藏
退出
时时商务社区
»
论坛首页
›
建站资源
›
建站技术
›
PHP防止表单重复提交的几种常用方法汇总 ...
返回列表
查看:
1400
|
回复:
0
PHP防止表单重复提交的几种常用方法汇总
[复制链接]
qz234
当前离线
积分
7694
2588
主题
2588
帖子
7694
积分
论坛元老
论坛元老, 积分 7694, 距离下一级还需 9992305 积分
论坛元老, 积分 7694, 距离下一级还需 9992305 积分
积分
7694
发消息
电梯直达
楼主
发表于 2018-2-14 05:55:24
|
只看该作者
|
倒序浏览
|
阅读模式
本文较为详细的汇总了PHP防止表单重复提交的几种常用方法,在PHP程序开发中有着很高的实用价值。具体方法如下:
1. 使用JS让按钮在点击一次后禁用(disable)。采用这种方法可以防止多次点击的发生,实现方式较简单。
缺点是若客户端禁止JavaScript脚本,则失效。
2. 在提交成功后执行页面重定向(redirect)。转到提交成功信息页面。
特点:避免F5重复提交,消除浏览器前进和后退按钮可导致的同样问题。
3. 表单隐藏域中存放session(表单被请求时生成的标记)。采用此方法在接收表单数据后,检查此标志值是否存在,先进行删除,然后处理数据; 若不存在,说明已提交过,忽略本次提交。
/*
//服务端生成随机数存入session, 分配至表单页
$data['sess_id'] = $_SESSION['sid'] = mt_rand(1000, 9999);
$this->load->view('form', $data);
//表单页隐藏域存放此session值
">
//处理
if($_POST['sid'] != '' && $_POST['sid'] == $_SESSION['sid'])
{
unset($_SESSION['sid']);
echo '处理数据';
}
else
{
echo '已提交过表单';
}
4. 数据库唯一索引约束(最有效的防止重复数据的方法)。
希望本文所述方法对大家的PHP项目开发能起到一定的帮助作用。
您可能感兴趣的文章:
PHP Token(令牌)设计
PHP令牌 Token改进版
ThinkPHP 防止表单重复提交的方法
解决php表单重复提交实现方法
php防止用户重复提交表单
关于php微信订阅号开发之token验证后自动发送消息给订阅号但是没有消息返回的问题
PHP使用token防止表单重复提交的方法
验证token、回复图文\文本、推送消息的实用微信类php代码
php解决和避免form表单重复提交的几种方法
php版微信开发Token验证失败或请求URL超时问题的解决方法
PHP定时任务获取微信access_token的方法
php表单加入Token防止重复提交的方法分析
分享到:
QQ好友和群
QQ空间
腾讯微博
腾讯朋友
收藏
0
回复
使用道具
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
用户反馈
客户端