主页 > 知识库 > php防止表单重复提交实例讲解

php防止表单重复提交实例讲解

热门标签:Linux服务器 电子围栏 阿里云 科大讯飞语音识别系统 银行业务 团购网站 服务器配置 Mysql连接数设置

说来惭愧,前几天做项目的时候,出现个低级错误。在公司后台做表单提交,一是自己员工用,二是 html 自己来写的,没有验证表单重复提交,结果出错了。写出来记录下以便提醒自己,时刻不能疏忽。

解决方法

其实方法有很多种,只举例几个简单的来说说。

框架

很多框架都有防止重复提交的功能,大家应该都有了解,这里不再赘述。

前端

原理很简单,用户点击提交之后,使用 JS 将提交按钮置灰即可。

后端

也就是使用 PHP 进行验证,当然不局限以下几种

Cookie

用户提交表单到后端,在 Cookie 中做标记,指定时间内重复提交无效。但是用户禁用 Cookie 这个方法就失效了。

?php
 
if (isset($_COOKIE['formFlag'])) {
  exit('error');
}
 
// 处理数据
 
// 30秒内重复提交无效
setcookie('formFlag', time(), time() + 30);

Session

展示表单页面的时候,生成随机数,同时存储在 Session 中以及表单隐藏域中。第一次提交的时候,对比成功删除 Session 中的值。

?php
 
if (!isset($_SESSION['formFlag']) || $_POST['formFlag'] != $_SESSION['formFlag']) {
  exit('error');
}
 
// 处理数据
 
unset($_SESSION['formFlag']);

上面就是本次介绍PHP防止重复提交表单的全部内容,感谢大家对脚本之家的支持。

您可能感兴趣的文章:
  • php如何把表单内容提交到数据库
  • PHP使用HTML5 FormData对象提交表单操作示例
  • 微信小程序学习笔记之表单提交与PHP后台数据交互处理图文详解
  • PHP如何通过表单直接提交大文件详解
  • php 提交表单 关闭layer弹窗iframe的实例讲解
  • php实现表单提交上传文件功能
  • PHP实现防止表单重复提交功能【基于token验证】
  • 解决php 处理 form 表单提交多个 name 属性值相同的 input 标签问题
  • PHP如何防止用户重复提交表单

标签:大理 广元 衢州 枣庄 蚌埠 衡水 江苏 萍乡

巨人网络通讯声明:本文标题《php防止表单重复提交实例讲解》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266