针对伪造的数据从URL提交的情况,首先是一个检查前一页来源的

function CheckURL(){
    $servername=$_SERVER['SERVER_NAME']; 
    $sub_from=$_SERVER["HTTP_REFERER"]; 

    $sub_len=strlen($servername); 
    $checkfrom=substr($sub_from,7,$sub_len); 

    if($checkfrom!=$servername){
        die("警告!你正在从外部提交数据!请立即终止!"); 
    }
}

这个方法只能防止手动在浏览器地址栏上输入的URL。

事实上只要在服务器上构造出一个指向该URL的超链接(www.startphp.cn/)比如在发贴时加入超链,再点击,这个Check就完全不起作用了。
目前觉得还是用POST的方法传递重要数据比较可靠。

还有其他的方法,比如设置时间戳,token等,还有没有其他的,欢迎留言!

转载:磊丰学长 http://www.startphp.cn/

最后修改:2022 年 05 月 14 日 12 : 44 AM
对您有帮助的话,请赏包辣条吧 ^~^