位置: 编程技术 - 正文

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 编码)

  • 增值税电子发票可以作废吗
  • 彩票税率税率
  • 应收账款平均余额公式
  • 公司提供住宿员工在外居住出现问题
  • 统一企业员工
  • 应收股利在资产负债表中填在哪里
  • 企业所得税完税凭证在哪里打印
  • 增票普票税额是否可以抵扣吗
  • 税务局代开的进项票需要认证吗
  • 母子公司可以开具资金占用费
  • 红字信息表编码怎么查
  • 公司代缴员工个税
  • 啤酒的税率是多少2022
  • 什么时候需要计提税金及附加
  • 小规模企业差额征收税率
  • 税控盘产生的费用可以抵扣吗
  • 单位报销托儿费
  • 开票3个点13个点是什么意思
  • 2021年保险营销员
  • 银行贷款受托支付受托人有风险吗
  • 收到购货方退回的发票联和抵扣联如何处理?
  • 推广的产品
  • 鸿蒙系统图标底色变白
  • 怎么做增值税
  • hbuilder打包apk
  • 系统属性的表现
  • 收入记借方
  • 出差的误餐费会计分录
  • infotainment.exe
  • mac清理垃圾怎么清理
  • 招待费审批流程
  • 广告费和业务宣传费税前扣除基数
  • 2017年新准则下,收入确认的金额应是
  • 虚拟机不能互相访问
  • php b/s
  • .info是什么意思?
  • 简述税款征收的基本原则
  • yii框架文档
  • php何去何从
  • 专票如何申领
  • thinkphp模型作用
  • php 密码加密
  • php curl_setopt
  • 帝国cms怎么加自己的名字
  • 采购发票生成的会计凭证
  • 应收账款的差额计入哪里
  • mongodb简单使用
  • 织梦怎么用
  • 企业所得税纳税申报表
  • 中级会计职称与中级会计师的区别
  • 增值税加计扣除怎么算举例
  • 研发费用 汇算清缴
  • 已抵扣进项怎么转出
  • 汽车以租代购可靠吗
  • 半年净资产收益率
  • 产品质量认证费用属于什么成本
  • 减少注册资本要公示多少天
  • 原始凭证的审核要求有哪些
  • mysql使用or会索引
  • win7端口怎么查看
  • 微软历代操作系统
  • win8蓝屏代码大全
  • mac桌面应用
  • centos7更改默认内核
  • 飞行体验设备
  • js模拟登录网站
  • python批量更改文件名称
  • github thanos
  • 百度关键词设置
  • jqueryui
  • 怎么利用python爬虫爬数据
  • jq获取节点属性
  • nodejs处理excel
  • python爬虫入门教程
  • javascript原型
  • 进项发票认证了怎么冲红
  • 深圳个税官网
  • 农民专业合作社法
  • 出口退税函调不予退税的后果
  • 税务系统领导干部监督管理办法
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设