针对伪造的数据从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/