我有一个网站需要根据用户交互增加数据库中的值。当用户点击一个按钮时,会调用一个php脚本来增加该值。我想保护这个脚本不被外部脚本访问。目前,用户可以使用JavaScript函数编写他们自己的网页,该函数重复地点击相同的php文件以炸毁数据库中的值。只允许通过本地服务器上的ajax访问PHP文件
这里是我的jQuery代码,不会递增:
jQuery(function(){
$('.votebtn').click(function(e){
var mynum = $(this).attr('id').substring(0,5);
$.ajax({
url:"countvote.php",
type:"GET",
data: {
thenum:mynum
},
cache: false,
success:function(data) {
alert('Success!');
}
}
});
});
});
我怎么会去使它所以只有本地服务器上的从阿贾克斯/ jQuery的调用可以访问“countvote.php”?如果这不是正确的方法,我会接受任何建议,以防止我的php脚本被外部脚本滥用。
你能限制可以访问countvote.php,只有那些在您的域名网站? – user829323 2013-03-15 16:05:46
@ user829323使用'wget'在浏览器之外伪造这个很简单。 – 2013-03-15 16:11:24