阅读模式:

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

查看:5192  回复: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

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

扫描二维码手机查看

发布评论:


登录:
  表情:
评论话题
推荐阅读:
web性能测试工具ab的测试方法   阅读:4954企业让你去面试,可能不是真的招人   阅读:6201分享:淘宝技术这十年   阅读:5001php生成二维码   阅读:7224什么是天使轮?什么是A轮融资?B轮融资?   阅读:5390php 获取当前前后年、月、星期、日、时分秒的时间   阅读:7133关于PHP程序员技术职业生涯规划   阅读:3192分享:淘宝技术这十年   阅读:5001shell脚本统计当前服务器并发连接数   阅读:8132centos 7 设置 nginx-1.11.10 开机启动   阅读:8352关于PHP程序员技术职业生涯规划   阅读:3192session与cookie的区别   阅读:4429“米粉节”背后的故事——小米网抢购系统开发实践   阅读:4434关于PHP程序员技术职业生涯规划   阅读:3192php删除一个文件夹内的所有文件夹和文件   阅读:5208javascript获取两个日期间的所有日期   阅读:7122mysql5.7主从同步中binlog同步模式详解   阅读:8012javascript对cookie操作详细代码函数   阅读:5613html5 离线缓存的使用   阅读:4650centos 7.2 添加php7 的 php-fpm 开机启动   阅读:25442关于PHP程序员技术职业生涯规划   阅读:3192session与cookie的区别   阅读:4429简单的DOS攻击之死亡之ping详解   阅读:61120centos7中颁发CA证书并开启web https   阅读:8485栈和堆的区别   阅读:5370简单的DOS攻击之死亡之ping详解   阅读:61120浅谈javascript的函数节流   阅读:5009人性漫画:打工与创业的残酷区别   阅读:5245php文件下载防盗链   阅读:10311知乎百万赞作者告诉你:年薪百万的人都在靠什么赚钱   阅读:7100Nginx 配置文件详解   阅读:5184霍金24岁博士毕业论文在线预览   阅读:5967给网站添加一键新浪微博登录的功能   阅读:6836一键分享到QQ空间、QQ好友、新浪微博、微信代码   阅读:133012网站性能优化-页面静态缓存   阅读:5781centos 7 安装 php-7.1.3   阅读:20969php swoole搭建简单的聊天室   阅读:4751php显示刚刚、几分钟前、几小时前、几天前的函数   阅读:9051centos 7 安装 redis 3.2.9   阅读:6949mysql5.7主从同步中binlog同步模式详解   阅读:8012php打印三角形   阅读:10952一步步带你,如何网站架构   阅读:4490纯干货,程序员面试的超实用技巧   阅读:4584php文件下载防盗链   阅读:10311网站局部小图片优化-base64编码图片   阅读:19236shell脚本破解十位数内的所有纯数字rar加密压缩包脚本   阅读:9547mysql数据一键导出到csv文件   阅读:6046企业让你去面试,可能不是真的招人   阅读:6201centos 7 安装 php-7.1.3   阅读:20969“米粉节”背后的故事——小米网抢购系统开发实践   阅读:4434