本文目录一览:
php 禁止外部提交数据代码
最好在数据库里的用户表里有一个记录是否登录的标志位字段
例如:
user(userName,userPassword,userLoginFlag)
用户表(用户名,密码,是否登录标志位)
登录的时候就判断用户名和密码是否正确,并且修改登录标志位,然后这些用户名都是通过session 或 cookie传递,因为其他页面如果都是用?xx=yy 这种方法,就会产生您所述的情况,另外还要多写一个文件,用来判断传递过来的“登录标志位”是true or false,
例如:
check.php
// 判断地址传递的用户名值和页面cookie传递的用户名值是否相等,不同则证明是人为修改的了啦,另外建议不用GET传递,不解释,就算万不得已要用get,我建议你encodeURI(escape(传递值)),或者再加一些自定义的编码,我想修改者改起来也没那么容易。
if($_COOKIE["userName"] != $_GET["userName"])
{
echo "script...../script"; // 提示退出,等等
}
然后除了登录的那个页面以外的页面都
include()这个check.php,
那无论他怎么修改地址传递的值时,必须要重新加载一次页面,加载的时候就必须判断cookie值和地址值的相等与否
PHP中限制IP段访问、禁止IP提交表单的代码
我们只要在feedback.php中添加下面的代码进行判断就可以了。
注意:下边只是一个PHP限制IP的实例代码,如果您打算应用到CMS中,请自行修改,或者如果您正在使用DEDECMS,可以联系本站。
复制代码
代码如下:
?php
//加IP访问限制
if(getenv('HTTP_CLIENT_IP')
strcasecmp(getenv('HTTP_CLIENT_IP'),
'unknown'))
{
$userip
=
getenv('HTTP_CLIENT_IP');
}
elseif(getenv('HTTP_X_FORWARDED_FOR')
strcasecmp(getenv('HTTP_X_FORWARDED_FOR'),
'unknown'))
{
$userip
=
getenv('HTTP_X_FORWARDED_FOR');
}
elseif(getenv('REMOTE_ADDR')
strcasecmp(getenv('REMOTE_ADDR'),
'unknown'))
{
$userip
=
getenv('REMOTE_ADDR');
}
elseif(isset($_SERVER['REMOTE_ADDR'])
$_SERVER['REMOTE_ADDR']
strcasecmp($_SERVER['REMOTE_ADDR'],
'unknown'))
{
$userip
=
$_SERVER['REMOTE_ADDR'];
}
//限制ip
if
($userip=='27.37.188.128'){
header("location:");//被禁止后跳转到脚本之家站
exit;
}
//限制ip段
$ip_arr
=
explode('.',
$userip);
#限制的ip段,假设是192.168.*.*
if
(!(($ip_arr[0]
==
'192'
$ip_arr[1]=='168')
)){
header("location:");//被禁止后跳转到脚本之家素材站
exit;
}else{
header("location:");//正常IP则直接访问脚本之家首页
exit;
}
?
PHP代码如何防止外部网站提交表单到本站
外部网站提交到本站的目的是什么?无非是为了段时间灌入大量数据,只要在时间上,对同一个用户名作出提交次数的限制,就能实现,如果没有用户名,可以用判断IP等方式实现。无需纠结于通过什么方式提交过来的,只要你自己对数据进行验证后录入数据库,然后对同一用户或者同一IP一段时间类提交次数作出限制,就能实现目的,无需纠结对方伪造什么
php如何 阻止表单提交?
通常是在表单中增加一个验证码。这是防无意刷新的简便方法。一刷新,验证码自动更新,处理程序就会检测到验证码不对。