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 相关文章推荐
福利彩票幸运号码自动生成器
Oct 09 PHP
简单的php 验证图片生成函数
May 21 PHP
整理的9个实用的PHP库简介和下载
Nov 09 PHP
Could not load type System.ServiceModel.Activation.HttpModule解决办法
Dec 29 PHP
php中AES加密解密的例子小结
Feb 18 PHP
一个php生成16位随机数的代码(两种方法)
Sep 16 PHP
用 Composer构建自己的 PHP 框架之使用 ORM
Oct 30 PHP
typecho插件编写教程(六):调用接口
May 28 PHP
PHP使用mkdir创建多级目录的方法
Dec 22 PHP
php cookie 详解使用实例
Nov 03 PHP
PHP与SQL语句常用大全
Dec 10 PHP
PHP实现的杨辉三角求解算法分析
Mar 11 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(4) php 函数 补充2
2010/02/15 PHP
php实现天干地支计算器示例
2014/03/14 PHP
PHP+Javascript实现在线拍照功能实例
2015/07/18 PHP
php实现微信企业号支付个人的方法详解
2017/07/26 PHP
简单实现php上传文件功能
2017/09/21 PHP
Ubuntu上安装yaf扩展的方法
2018/01/29 PHP
PHP使用SMTP邮件服务器发送邮件示例
2018/08/28 PHP
JQuery 简便实现页面元素数据验证功能
2007/03/24 Javascript
JavaScript实现生成GUID(全局统一标识符)
2014/09/05 Javascript
jQuery实现的感应鼠标悬停图片色彩渐显效果
2015/03/03 Javascript
javascript 对象数组根据对象object key的值排序
2015/03/09 Javascript
基于JQuery和CSS3实现仿Apple TV海报背景视觉差特效源码分享
2015/09/21 Javascript
javascript基础知识分享之类与函数化
2016/02/13 Javascript
浅谈JavaScript的函数及作用域
2016/12/30 Javascript
几种tab切换详解
2017/02/03 Javascript
React实践之Tree组件的使用方法
2017/09/30 Javascript
微信小程序select下拉框实现源码
2019/11/08 Javascript
深入理解Python中的元类(metaclass)
2015/02/14 Python
Python实现提取文章摘要的方法
2015/04/21 Python
python求解水仙花数的方法
2015/05/11 Python
高效测试用例组织算法pairwise之Python实现方法
2017/07/19 Python
python+ffmpeg视频并发直播压力测试
2018/03/06 Python
Python基于xlrd模块操作Excel的方法示例
2018/06/21 Python
Python打开文件,将list、numpy数组内容写入txt文件中的方法
2018/10/26 Python
Python爬虫实战之12306抢票开源
2019/01/24 Python
Django 用户认证组件使用详解
2019/07/23 Python
Python使用grequests(gevent+requests)并发发送请求过程解析
2019/09/25 Python
python用quad、dblquad实现一维二维积分的实例详解
2019/11/20 Python
python将音频进行变速的操作方法
2020/04/08 Python
python下对hsv颜色空间进行量化操作
2020/06/04 Python
毕业评语大全
2014/05/04 职场文书
破坏寝室公物检讨书
2014/11/17 职场文书
2014年学校德育工作总结
2014/12/05 职场文书
索赔员岗位职责
2015/02/15 职场文书
2015年医院工作总结范文
2015/04/09 职场文书
领导欢送会主持词
2015/07/06 职场文书