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 相关文章推荐
用Apache反向代理设置对外的WWW和文件服务器
Oct 09 PHP
一个PHP日历程序
Dec 06 PHP
PHP 全角转半角实现代码
May 16 PHP
php自动加载的两种实现方法
Jun 21 PHP
php将会员数据导入到ucenter的代码
Jul 18 PHP
php中记录用户访问过的产品,在cookie记录产品id,id取得产品信息
May 04 PHP
php _autoload自动加载类与机制分析
Feb 10 PHP
解析将多维数组转换为支持curl提交的一维数组格式
Jul 08 PHP
PHP图片上传代码
Nov 04 PHP
php实现通过ftp上传文件
Jun 19 PHP
谈谈从phpinfo中能获取哪些值得注意的信息
Mar 28 PHP
PHP加MySQL消息队列深入理解
Feb 27 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 什么是PEAR?(第二篇)
2009/03/19 PHP
比较简单的异步加载JS文件的代码
2009/07/18 Javascript
什么是JavaScript
2009/08/13 Javascript
基于jQuery的仿flash的广告轮播
2010/11/05 Javascript
javascript提取URL的搜索字符串中的参数(自定义函数实现)
2013/01/22 Javascript
jQuery对指定元素中指定字符串进行替换的方法
2015/03/17 Javascript
用Node.js通过sitemap.xml批量抓取美女图片
2015/05/28 Javascript
js判断浏览器类型及设备(移动页面开发)
2015/07/30 Javascript
AngularJS初始化静态模板详解
2016/01/14 Javascript
js实现input密码框提示信息的方法(附html5实现方法)
2016/01/14 Javascript
VUEJS实战之构建基础并渲染出列表(1)
2016/06/13 Javascript
jQuery实现的tab标签切换效果示例
2016/09/05 Javascript
js编写三级联动简单案例
2016/12/21 Javascript
微信小程序 弹窗自定义实例代码
2017/03/08 Javascript
微信小程序 setData的使用方法详解
2017/04/20 Javascript
Vue实战之vue登录验证的实现代码
2017/10/31 Javascript
基于JavaScript实现表格滚动分页
2017/11/22 Javascript
php中and 和 &amp;&amp;出坑指南
2018/07/13 Javascript
JS常见构造模式实例对比分析
2018/08/27 Javascript
vue下拉菜单组件(含搜索)的实现代码
2018/11/25 Javascript
微信小程序实现的一键复制功能示例
2019/04/24 Javascript
JS实现选项卡效果的代码实例
2019/05/20 Javascript
Vue退出登录时清空缓存的实现
2019/11/12 Javascript
[01:00:10]完美世界DOTA2联赛PWL S2 FTD vs Inki 第二场 11.21
2020/11/24 DOTA
在Python的Django框架上部署ORM库的教程
2015/04/20 Python
python dataframe NaN处理方式
2019/12/26 Python
Python读取配置文件(config.ini)以及写入配置文件
2020/04/08 Python
完美解决pycharm 不显示代码提示问题
2020/06/02 Python
HTML5+CSS3模仿优酷视频截图功能示例
2017/01/05 HTML / CSS
前端实现背景虚化但内容清晰且自适应 的实例代码
2019/08/01 HTML / CSS
高职教师岗位职责
2013/12/24 职场文书
职工趣味运动会方案
2014/02/10 职场文书
2015秋季开学典礼致辞
2015/07/16 职场文书
2017公司年会主持人开幕词
2016/03/04 职场文书
CSS实现章节添加自增序号的方法
2021/06/23 HTML / CSS
Apache POI操作批量导入MySQL数据库
2022/06/21 Servers