本文作者:温文曦

前端+后端实现的get、post提交验证

温文曦 10-26 562 抢沙发 百度已收录
前端+后端实现的get、post提交验证摘要:         我此次使用的是前端+后端实现的一个表单过期处理。   ...

        我此次使用的是前端+后端实现的一个表单过期处理。

        公司有个表单需要防止攻击,就做了个表单提交验证。完全是自己的思路。可以用作api的动态key值。

        前端:

<?php
    $rand = time();
    $r = $rand.md5($rand."www.vience.cn");
?>
<form action="">
    <input type="hidden" name="r" value="<?php echo $r;?>">
    <input type="submit" value="提交"/>
</form>


        后端:

<?php
    $randmd5 = $_REQUEST['r'];//校验值
    $r = mb_substr($randmd5, 0 , 10);//从左边第一位字符起截取3位字符,时间戳截取
    $rmd5 = mb_substr($randmd5, 10 , 32);//提取的随机数字md5
    $rmd52 = md5($r."www.vience.cn");//根据随机数字生产md5
    if($rmd5 == $rmd52){//验证是否是伪造的提交
    $posttime = $r;
    $nowtime = time();
    $postjian =  $nowtime - $posttime;
    if($postjian > 300){exit("使用了5分钟之前的r值!请刷新页面!");}//时间校验,60*5秒,5分钟
        $websiteid = $_REQUEST['fields']['websiteid'];//网站ID
        echo "验证成功!";
    }else{
        echo "请勿伪造数据进行提交!";
    }
?>

        

        其实不只是form表单提交,改改就是自己的了,貌似改了用作api接口程序演示站点很合适的样子,看那些大公司应该就是这样搞的。

文章版权及转载声明

作者:温文曦本文地址:https://www.vience.cn/blog/650.html发布于 10-26
文章转载或复制请以超链接形式并注明出处文曦博客

赞(4)
阅读
分享

发表评论

快捷回复:

评论列表 (暂无评论,562人围观)参与讨论

还没有评论,来说两句吧...