位置: 编程技术 - 正文

php解决和避免form表单重复提交的几种方法(php eval绕过)

编辑:rootadmin

推荐整理分享php解决和避免form表单重复提交的几种方法(php eval绕过),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php接口防止重复请求,php技巧,php提供哪些函数来避免sql注入,php eval绕过,php eval绕过,php接口防止重复请求,php部署怎么防止源码,php遇到的问题,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

为什么要避免form表单被重复提交呢?因为我们不想让我们的服务器重复处理没必要的数据,同时我们也是避免我们的数据库产生重复的数据,避免表单重复提交也是让我们的网站更安全的一种表现。

先看一下有哪些情况下回导致表单重复提交呢,知道哪些情况下可能会出现表单重复提交就可以从根源处理表单重复提交的情况了。

下面的情况就会导致表单重复提交:

点击提交按钮两次。

点击刷新按钮。

使用浏览器后退按钮重复之前的操作,导致重复提交表单。

使用浏览器历史记录重复提交表单。

浏览器重复的HTTP请求。

网页被恶意刷新。

下面是几种解决办法:

一:利用js设置按钮点击后变成灰色

点击完按钮之后变成灰色就不能点击了,用户需要再次提交表单的话就要刷新页面之后重新填写数据再提交了。

二:利用session

php解决和避免form表单重复提交的几种方法(php eval绕过)

在session中放一个特殊标志。当表单页面被请求时,生成一个特殊的字符标志串,存在session中,同时放在表单的隐藏域里。接受处理表单数据时,检查标识字串是否存在,并立即从session中删除它,然后正常处理数据。

如果发现表单提交里没有有效的标志串,这说明表单已经被提交过了,忽略这次提交。

这使你的web应用有了更高级的XSRF保护

加载提交的页面时候,生成一个随机数,

$code = mt_rand(0,);

存储在表单的隐藏输入框中:

< input type=”hidden” name=”code” value=””>

在接收页面的PHP代码如下:

三:利用cookies

原理和session差不多,但是cookies一旦用户浏览器禁用cookies,这功能就失效了

四:利用header函数跳转

一旦用户点击提交按钮,处理完数据后跳到其他页面

五:利用数据库来添加约束

直接在数据库里添加唯一约束或创建唯一索引,一旦发现用户重复提交了,直接抛出警告或者提示,或者只处理第一次提交的数据,这是最直接有效的方法,要求前期的数据库设计和架构要考虑周全.

六:Post/Redirect/Get模式。

在提交后执行页面重定向,这就是所谓的Post-Redirect-Get (PRG)模式。简言之,当用户提交了表单后,你去执行一个客户端的重定向,转到提交成功信息页面。

总结

标签: php eval绕过

本文链接地址:https://www.jiuchutong.com/biancheng/301731.html 转载请保留说明!

上一篇:总结PHP删除字符串最后一个字符的三种方法(总结php删除字符的方法)

下一篇:PHP数组编码gbk与utf8互相转换的两种方法(php 编码)

  • 医疗服务收入占比标准
  • 车险会计分录处理怎么写
  • 企业持有到期债券的风险
  • 库存商品进价成本
  • 出差出了事故怎么处理
  • 规避税收风险什么意思
  • 管家婆怎样查历史记录
  • 破产清算重整和解
  • 如何准确区分不动产租赁和仓储服务?
  • 安装费算固定资产
  • 钱打到对公账户
  • 销售产品配件计入什么科目
  • 销售折扣单独开票
  • falogincn修改无线密码
  • linux系统添加静态路由命令
  • SSDP Discovery Service 是什么可以禁用吗
  • 承租人对经营租赁和融资租赁会计处理方式
  • mcappins.exe - mcappins进程是什么文件 什么意思.
  • kb4539601安装失败
  • 科克伯什么意思
  • 什么是民办非企业属于民营经济吗
  • 投标报名费怎么定
  • 姆科马齐国家公园
  • php实现登录功能
  • 既简单又安全的小实验
  • 建行e信通怎么提现怎么操作
  • yolov3图像识别
  • 前端经典面试题及答案
  • rcnn系列详解
  • 一文速学-XGBoost模型算法原理以及实现+Python项目实战
  • tracetcp命令
  • iphone添加自定义提示音
  • 稳岗补贴什么时候到账
  • 民办幼儿园需要什么资质
  • 退货可以开红字发票吗
  • 工会经费和残保金不交有什么影响
  • 应收的货款
  • 十年磨一剑的下一句幽默
  • 帝国cms如何使用
  • 织梦不更新了
  • sql server配置文件在哪
  • sql server 实例
  • sql数据库聚集索引和非聚集索引的区别是什么?
  • 哪些科目会影响损益
  • 结转成本是什么凭证
  • 其他应付款付不出去怎么处理好
  • 小规模纳税人的增值税计入成本吗
  • 事业单位购入
  • 贴现利息的计算公式为
  • 汇算清缴缴纳的所得税怎么做账
  • 资产减值后折旧怎么算
  • 出口不退税进项要转出吗
  • 购买商品或服务不给开发票违法吗
  • 存在弃置费用的固定资产例题
  • 审核记账凭证的心得
  • 动产不动产租赁增值税税率
  • 被放弃的遗产
  • fat32转换为ntfs分区命令
  • linux pb
  • centos 安装程序
  • ubuntu 18.04网络连接
  • 防盗信息
  • win8系统计算机在哪里
  • win8系统怎么设置
  • 怎么配置命令
  • win10如何不升级系统
  • win8.1升级到win10
  • bootstrap designer
  • opengl深度值与z值
  • [置顶]电影名字《收件人不详》
  • node.js web
  • python中字典的键值对
  • 编写javascript代码
  • python查询系统
  • 怎么查其他公司的财务报表
  • 电子发票版式文件生成失败怎么办
  • 国家税务局总局黑龙江分局
  • 党建共建的目的
  • 江苏省国税务局
  • 2023年车辆购置税优惠政策有哪些
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设