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
用phpmyadmin更改mysql5.0登录密码
Mar 25 PHP
用js进行url编码后用php反解以及用php实现js的escape功能函数总结
Feb 08 PHP
php简单的会话类代码
Aug 08 PHP
解析php中获取系统信息的方法
Jun 25 PHP
解决php接收shell返回的结果中文乱码问题
Jan 23 PHP
9个经典的PHP代码片段分享
Dec 18 PHP
php文件上传简单实现方法
Jan 24 PHP
编写PHP脚本来实现WordPress中评论分页的功能
Dec 10 PHP
Zend Framework教程之Autoloading用法详解
Mar 08 PHP
PHP新特性详解之命名空间、性状与生成器
Jul 18 PHP
PHP批量删除jQuery操作
Jul 23 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
Mysql和网页显示乱码解决方法集锦
2008/03/27 PHP
php读取csv实现csv文件下载功能
2013/12/18 PHP
浅析php创建者模式
2014/11/25 PHP
php数组函数array_key_exists()小结
2015/12/10 PHP
thinkPHP商城公告功能开发问题分析
2016/12/01 PHP
javascript英文日期(有时间)选择器
2007/05/02 Javascript
可以把编码转换成 gb2312编码lib.UTF8toGB2312.js
2007/08/21 Javascript
javascript getElementsByName()的用法说明
2009/07/31 Javascript
JS 自定义函数缺省值的设置方法
2010/05/05 Javascript
30分钟就入门的正则表达式基础教程
2013/02/25 Javascript
jQuery ui实现动感的圆角渐变网站导航菜单效果代码
2015/08/26 Javascript
jquery中checkbox使用方法简单实例演示
2015/11/24 Javascript
AngularJS 在同一个界面启动多个ng-app应用模块详解
2016/12/20 Javascript
使用 Node.js 对文本内容分词和关键词抽取
2017/05/27 Javascript
JsChart组件使用详解
2018/03/04 Javascript
javascript 原型与原型链的理解及实例分析
2019/11/23 Javascript
JS面向对象实现飞机大战
2020/08/26 Javascript
[02:34]2016完美“圣”典风云人物:BurNIng专访
2016/12/10 DOTA
[01:10:24]DOTA2-DPC中国联赛 正赛 VG vs Aster BO3 第一场 2月28日
2021/03/11 DOTA
python 文件和路径操作函数小结
2009/11/23 Python
Python 代码性能优化技巧分享
2012/08/07 Python
Python3中内置类型bytes和str用法及byte和string之间各种编码转换 问题
2018/09/27 Python
python障碍式期权定价公式
2019/07/19 Python
Python numpy数组转置与轴变换
2019/11/15 Python
基于python实现判断字符串是否数字算法
2020/07/10 Python
python+appium+yaml移动端自动化测试框架实现详解
2020/11/24 Python
Spartoo西班牙官网:法国时尚购物网站
2018/03/27 全球购物
英国健康和美容技术产品购物网站:CurrentBody
2019/07/17 全球购物
电脑租赁公司创业计划书
2014/01/08 职场文书
大学生旅游业创业计划书
2014/01/29 职场文书
如何撰写岗位职责
2014/02/01 职场文书
优秀部门获奖感言
2014/02/14 职场文书
统计岗位职责
2014/02/21 职场文书
大学四年个人自我小结
2014/03/05 职场文书
《中国古代诗歌散文欣赏》高中语文教材
2019/08/20 职场文书
SpringBoot集成MongoDB实现文件上传的步骤
2022/04/18 MongoDB