PHP实现防止表单重复提交功能【基于token验证】


Posted in PHP onMay 24, 2018

本文实例讲述了PHP实现防止表单重复提交功能。分享给大家供大家参考,具体如下:

防止表单重复提交的方法有很多种,那么今天就给大家介绍一种php如何有效的防止表单重复提交。

代码非常简单

我相信大家很聪明给大家分享一个小的demo,大家可以借鉴一下:

PHP实现防止表单重复提交功能【基于token验证】

PHP实现防止表单重复提交功能【基于token验证】

具体代码:

<?php
/*
* 2016年9月29日08:09:13
*/
session_start();
header("Content-Type: text/html;charset=utf-8");
function set_token() {
  $_SESSION['token'] = md5(microtime(true));
}
function valid_token() {
  $return = $_REQUEST['token'] === $_SESSION['token'] ? true : false;
  set_token();
  return $return;
}
//如果token为空则生成一个token
if(!isset($_SESSION['token']) || $_SESSION['token']=='') {
  set_token();
}
if(isset($_POST['web'])){
  if(!valid_token()){
    echo "token error,请不要重复提交!";
  }else{
    echo '成功提交,Value:'.$_POST['web'];
  }
}else{
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>PHP防止重复提交表单</title>
<meta name="keywords" content="PHP" />
<meta name="description" content="PHP防止重复提交表单" />
</head>
<body>
<div id="main">
  <div class="demo">
    <form method="post" action="">
      <input type="hidden" name="token" value="<?php echo $_SESSION['token']?>">
      <input type="text" class="input" name="web" value="三水点靠木">
      <input type="submit" class="btn" value="提交" />
    </form>
  </div>
</div>
</body>
</html>
<?php }?>

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
支持oicq头像的留言簿(二)
Oct 09 PHP
基于HTTP长连接的&quot;服务器推&quot;技术的php 简易聊天室
Oct 31 PHP
PHP chmod 函数与批量修改文件目录权限
May 10 PHP
php利用cookie实现访问次数统计代码
May 19 PHP
说说PHP的autoLoad自动加载机制
Sep 27 PHP
Smarty中常用变量操作符汇总
Oct 27 PHP
php简单日历函数
Oct 28 PHP
[原创]smarty简单模板变量输出方法
Jul 09 PHP
PHP使用正则表达式实现过滤非法字符串功能示例
Jun 04 PHP
laravel 事件/监听器实例代码
Apr 12 PHP
thinkPHP+LayUI 流加载实现功能
Sep 27 PHP
XAMPP升级PHP版本实现步骤解析
Sep 04 PHP
PHP实现微信小程序人脸识别刷脸登录功能
May 24 #PHP
ThinkPHP框架实现的MySQL数据库备份功能示例
May 24 #PHP
CI框架(CodeIgniter)实现的导入、导出数据操作示例
May 24 #PHP
PHP实现一维数组与二维数组去重功能示例
May 24 #PHP
CI框架(CodeIgniter)实现的数据库增删改查操作总结
May 23 #PHP
yii2安装详细流程
May 23 #PHP
PHP仿tp实现mvc框架基本设计思路与实现方法分析
May 23 #PHP
You might like
php 字符串替换的方法
2012/01/10 PHP
php线性表顺序存储实现代码(增删查改)
2012/02/16 PHP
openflashchart 2.0 简单案例php版
2012/05/21 PHP
PHP与Java进行通信的实现方法
2013/10/21 PHP
php检测iis环境是否支持htaccess的方法
2014/02/18 PHP
为你总结一些php系统类函数
2015/10/21 PHP
yii gridview实现时间段筛选功能
2017/08/15 PHP
SwfUpload在IE10上不出现上传按钮的解决方法
2013/06/25 Javascript
基于jquery的网站幻灯片切换效果焦点图代码
2013/09/15 Javascript
jQuery插件开发的两种方法及$.fn.extend的详解
2014/01/16 Javascript
Angular限制input框输入金额(是小数的话只保留两位小数点)
2017/07/13 Javascript
常用的 JS 排序算法 整理版
2018/04/05 Javascript
简单学习5种处理Vue.js异常的方法
2019/06/17 Javascript
JS实现移动端点击按钮复制文本内容
2019/07/28 Javascript
node 文件上传接口的转发的实现
2019/09/23 Javascript
python回调函数的使用方法
2014/01/23 Python
使用Python进行新浪微博的mid和url互相转换实例(10进制和62进制互算)
2014/04/25 Python
特征脸(Eigenface)理论基础之PCA主成分分析法
2018/03/13 Python
Windows下安装Scrapy
2018/10/17 Python
python+pyqt5实现图片批量缩放工具
2019/03/18 Python
python语言基本语句用法总结
2019/06/11 Python
基于python的BP神经网络及异或实现过程解析
2019/09/30 Python
Python 实现Numpy中找出array中最大值所对应的行和列
2019/11/26 Python
Python调用scp向服务器上传文件示例
2019/12/22 Python
python speech模块的使用方法
2020/09/09 Python
python中绕过反爬虫的方法总结
2020/11/25 Python
Python3+Django get/post请求实现教程详解
2021/02/16 Python
社区志愿者心得体会
2014/01/03 职场文书
孝敬父母的演讲稿
2014/05/14 职场文书
学校运动会霸气口号
2014/06/07 职场文书
与美同行演讲稿
2014/09/13 职场文书
祖国在我心中演讲稿(小学生)
2014/09/23 职场文书
居安思危观后感
2015/06/11 职场文书
鲁滨孙漂流记读书笔记
2015/06/30 职场文书
2019年浪漫婚礼证婚词
2019/06/27 职场文书
教你使用Ubuntu搭建DNS服务器
2022/09/23 Servers