阅读模式:

防止form表单重复提交和防跨站请求攻击

查看:5511  回复:0  类型:  来源:php自学网  标签 php

利用php随机函数生成一个随机码,然后写入到session,在form表单中放置这个随机码,提交的时候进行并对,如果两个值不一致,就是重复提交或非法请求了,当页面刷新后又生成一个新的随机码,再比对。


<?php

    //表单页面

    session_start();

   

    $s_code = md5(mt_rand(0,10000000));

    $_SESSION['s_code']=$s_code;

?>


<?php

    //表单处理页面

    $c_code = $_POST['code'];

     if($c_code == $_SESSION['s_code']){

        //通过

    }else{

        exit('重复提交或非法请求!');

    }

?>


◆另外一个简单粗暴的方法:

echo "<script type='text/javascript'>alert('提交成功!');window.location.href='index.php';</script>";

当提交成功后,加上js跳转,再刷新页面就不会重复提交了。当浏览器再返回上一页的时候会提示文档已过期,也不会重复提交数据。

window.location.href='index.php';


分享到:
0 0

*有问题之处烦请在评论中指出非常感谢!
不是我想要的内容,继续搜索:

扫描二维码手机查看

发布评论:


登录:
  表情:
评论话题
推荐阅读:
ajax+php 实现一个简单的在线聊天室功能(附带源码)   阅读:10739一键分享到QQ空间、QQ好友、新浪微博、微信代码   阅读:136382php连接redis   阅读:6410php文件下载防盗链   阅读:10859php 获取当前前后年、月、星期、日、时分秒的时间   阅读:7638php文件下载防盗链   阅读:10859一步步带你,如何网站架构   阅读:4911给网站添加一键新浪微博登录的功能   阅读:7250php 统计网页打开耗时和脚本运行内存   阅读:7575php 使用 smtp.php 类在线发送邮件功能   阅读:6564最新centos7 搭建LNMP环境(centos7.2+php7+mysql5.7+nginx1.11+redis3.2)   阅读:11987mysql共享锁和排他锁详解   阅读:8376简单的DOS攻击之死亡之ping详解   阅读:68081centos 7 安装 nginx-1.11.10   阅读:9441php显示刚刚、几分钟前、几小时前、几天前的函数   阅读:9651nginx安装mysql和json模块   阅读:6509centos 7 安装 samba 服务   阅读:7686linux rarcrack破解rar、zip和7z压缩包简单密码的工具   阅读:19255Nginx 配置文件详解   阅读:5859shell脚本破解十位数内的所有纯数字rar加密压缩包脚本   阅读:10137linux php7编译安装mongodb扩展   阅读:9974mongodb设置shell开机启动脚本   阅读:11506移动端自适应rem原理   阅读:10479程序员找工作三要素(必看)   阅读:6402面试都会问你为什么你从上一家公司离职的真实意思   阅读:12383面试都会问你为什么你从上一家公司离职的真实意思   阅读:12383网站局部小图片优化-base64编码图片   阅读:20932javascript点击复制内容   阅读:7987nginx安装mysql和json模块   阅读:6509php压缩页面的html代码一行显示   阅读:8528mysql共享锁和排他锁详解   阅读:8376php 读取和设置redis的键值   阅读:8167phpexcel 超简单从excel表格一键导入数据到数据库教程   阅读:13291网站性能优化-页面静态缓存   阅读:6169shell脚本破解十位数内的所有纯数字rar加密压缩包脚本   阅读:10137mysql5.7开启sql日志的配置   阅读:10539人性漫画:打工与创业的残酷区别   阅读:5694php 统计网页打开耗时和脚本运行内存   阅读:7575php 生成图片,给图片加水印   阅读:7296mysql5.7主从同步中binlog同步模式详解   阅读:8960nginx安装mysql和json模块   阅读:6509php打印九九乘法表   阅读:12385程序员找工作三要素(必看)   阅读:6402php文件下载防盗链   阅读:10859php压缩页面的html代码一行显示   阅读:8528linux教程,鸟哥私房菜(pdf全集)   阅读:11263centos 7 修改系统屏幕分辨率   阅读:49341“米粉节”背后的故事——小米网抢购系统开发实践   阅读:4825最简单的Banner轮播左右切换效果代码及实现思路(附带源码)   阅读:34056php打印三角形   阅读:12569