PHP使用token防止表单重复提交的方法


Posted in PHP onApril 07, 2016

本文实例讲述了PHP使用token防止表单重复提交的方法。分享给大家供大家参考,具体如下:

<?php
/*
* PHP使用token防止表单重复提交
* 此处理方法纯粹是为了给初学者参考
*/
session_start();
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['test'])){
  if(!valid_token()){
    echo "token error";
  }else{
    echo '成功提交,Value:'.$_POST['test'];
  }
}
?>
<form method="post" action="">
  <input type="hidden" name="token" value="<?php echo $_SESSION['token']?>">
  <input type="text" name="test" value="Default">
  <input type="submit" value="提交" />
</form>

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

PHP 相关文章推荐
html中select语句读取mysql表中内容
Oct 09 PHP
PHP编码规范-php coding standard
Mar 16 PHP
php 友好URL的实现(吐血推荐)
Oct 04 PHP
php getsiteurl()函数
Sep 05 PHP
解析php获取字符串的编码格式的方法(函数)
Jun 21 PHP
PHP图片处理之使用imagecopyresampled函数裁剪图片例子
Nov 19 PHP
thinkphp3.2.2实现生成多张缩略图的方法
Dec 19 PHP
解决ThinkPHP关闭调试模式时报错的问题汇总
Apr 22 PHP
joomla数据库操作示例代码
Jan 06 PHP
PHP实现电商订单自动确认收货redis队列
May 17 PHP
php中访问修饰符的知识点总结
Jan 27 PHP
php设计模式之适配器模式实例分析【星际争霸游戏案例】
Apr 07 PHP
PHP使用Mysqli类库实现完美分页效果的方法
Apr 07 #PHP
Linux下编译redis和phpredis的方法
Apr 07 #PHP
php 实现进制相互转换
Apr 07 #PHP
Linux(CentOS)下PHP扩展PDO编译安装的方法
Apr 07 #PHP
php制作简单模版引擎
Apr 07 #PHP
thinkphp框架下实现登录、注册、找回密码功能
Apr 06 #PHP
非常有用的9个PHP代码片段
Apr 06 #PHP
You might like
日本因肺炎疫情影响,这几部动漫推延播放!
2020/03/03 日漫
PHP fopen()和 file_get_contents()应用与差异介绍
2014/03/19 PHP
详解WordPress开发中过滤属性以及Sql语句的函数使用
2015/12/25 PHP
Yii实现单用户博客系统文章详情页插入评论表单的方法
2015/12/28 PHP
php单元测试phpunit入门实例教程
2017/11/17 PHP
php5对象复制、clone、浅复制与深复制实例详解
2019/08/14 PHP
初学JavaScript第二章
2008/09/30 Javascript
ASP中Sub和Function的区别说明
2020/08/30 Javascript
JS事件Event元素(兼容IE,Firefox,Chorme)
2012/11/01 Javascript
基于jquery实现点击左右按钮图片横向滚动
2013/04/11 Javascript
JavaScript自定义方法实现trim()、Ltrim()、Rtrim()的功能
2013/11/03 Javascript
jQuery jcrop插件截图使用方法
2013/11/20 Javascript
node.js正则表达式获取网页中所有链接的代码实例
2014/06/03 Javascript
js实现window.open不被拦截的解决方法汇总
2014/10/30 Javascript
JavaScript数据类型详解
2015/04/01 Javascript
js实现点击链接后延迟3秒再跳转的方法
2015/06/05 Javascript
JQuery遍历DOM节点的方法
2015/06/11 Javascript
深入理解Javascript中的作用域链和闭包
2017/04/25 Javascript
js实现橱窗展示效果
2020/01/11 Javascript
Vuex模块化应用实践示例
2020/02/03 Javascript
解决vue单页面应用打包后相对路径、绝对路径相关问题
2020/08/14 Javascript
Js实现粘贴上传图片的原理及示例
2020/12/09 Javascript
Python3基础之条件与循环控制实例解析
2014/08/13 Python
解决python中遇到字典里key值为None的情况,取不出来的问题
2018/10/17 Python
Python实现个人微信号自动监控告警的示例
2019/07/03 Python
基于Python测试程序是否有错误
2020/05/16 Python
python-地图可视化组件folium的操作
2020/12/14 Python
个人求职简历的自我评价范文
2013/10/09 职场文书
生日礼品店创业计划书范文
2014/03/21 职场文书
自行车广告词大全
2014/03/21 职场文书
房屋维修协议书范本
2014/09/25 职场文书
质监局领导班子对照检查材料思想汇报
2014/09/27 职场文书
小学运动会报道稿
2014/10/04 职场文书
就业推荐表院系意见
2015/06/05 职场文书
2015年学校教科室工作总结
2015/07/20 职场文书
Vue实现导入Excel功能步骤详解
2021/07/03 Vue.js