阅读模式:

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

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

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

扫描二维码手机查看

发布评论:


登录:
  表情:
评论话题
推荐阅读:
php swoole搭建简单的聊天室   阅读:5464mongodb设置shell开机启动脚本   阅读:11453给php7安装redis扩展库   阅读:9195爱编程,也爱健康   阅读:5066mysql5.7开启sql日志的配置   阅读:10492面试都会问你为什么你从上一家公司离职的真实意思   阅读:12324小米手机端商城rem适配原理   阅读:7437javascript获取两个日期间的所有日期   阅读:7633centos 7 设置 nginx-1.11.10 开机启动   阅读:8811栈和堆的区别   阅读:5766javascript点击复制内容   阅读:7935Mysql在大型网站的应用架构演变   阅读:5300mysql共享锁和排他锁详解   阅读:8321一键分享到QQ空间、QQ好友、新浪微博、微信代码   阅读:136146php翻转字符串   阅读:4290面试都会问你为什么你从上一家公司离职的真实意思   阅读:12324linux top命令详解   阅读:10553centos 7.2 添加php7 的 php-fpm 开机启动   阅读:26433“米粉节”背后的故事——小米网抢购系统开发实践   阅读:4788mysql数据库性能的基本优化   阅读:5097php打印九九加法表   阅读:12110mysql数据库性能的基本优化   阅读:5097php连接redis   阅读:6376霍金24岁博士毕业论文在线预览   阅读:6384nginx编译安装后对nginx进行平滑升级   阅读:7563mongodb设置shell开机启动脚本   阅读:11453给php7安装redis扩展库   阅读:9195shell脚本批量删除几天前的文件   阅读:11475给网站添加一键qq登录的功能   阅读:8394linux rarcrack破解rar、zip和7z压缩包简单密码的工具   阅读:19183mysql数据库性能的基本优化   阅读:5097centos 7 修改系统屏幕分辨率   阅读:49146crontab+shell脚本实现定时备份mysql数据库   阅读:8501centos7中颁发CA证书并开启web https   阅读:9255shell脚本统计当前服务器并发连接数   阅读:8681shell脚本批量删除几天前的文件   阅读:11475TCP的三次握手(建立连接)和四次挥手(关闭连接)   阅读:4602面试的时候回去等通知,等电话的真实意思   阅读:25980什么是天使轮?什么是A轮融资?B轮融资?   阅读:5894centos 7 开启网络   阅读:8084mongodb设置shell开机启动脚本   阅读:11453centos 7 开启网络   阅读:8084nginx编译安装后对nginx进行平滑升级   阅读:7563php 生成图片,给图片加水印   阅读:7251面试的时候和你谈理想,是理想or入坑?   阅读:11962php生成二维码   阅读:7766mysql数据一键导出到csv文件   阅读:6539web性能测试工具ab的测试方法   阅读:5343linux php7安装yaf扩展   阅读:9524linux php7编译安装mongodb扩展   阅读:9937