有人能帮我弄一下我的if statement吗?当人们访问我的网站时,我会尝试做两个检查。第一个检查连接类型,如果不是宽带连接,它会将报头重定向到google。第二个检查ip地址是否是已知的代理,如果是,它会发送指向google的报头。我的问题是,无论它是不是代理,它总是发送报头,连接类型也是如此,无论它发送哪个报头。我做错了什么?
HERE ARE THE OPTIONS FOR $TYPE.
$type = "Corperate";
$type = "Dial-Up";
$type = "Broadband";
//Block based on connection type
if ($type != "Broadband") {
header('Location: http://www.google.com');
} else {
//Do Nothing
}
HERE ARE THE OPTIONS FOR $PROXY.
$proxy = "Suspected Network Sharing Device";
$proxy = "Known Proxy";
//Block based on proxy
if (strlen($proxy) > 0) {
header('Location: http://www.google.com');
} else {
//Do nothing
}发布于 2011-06-17 11:09:56
您的两个$proxy选项不都有length>0吗?
我觉得应该是
if($proxy != "known_proxy"){
header('Location:http://www.google.com')
}发布于 2011-06-17 11:14:06
使用
if (!empty($proxy)) {
header('Location: http://www.google.com');
}而不是。
此外,我甚至不确定这是你的问题,因为两个代理“选项”都不是空字符串,因此有一个strlen() > 0。
if语句返回false的唯一方法是执行$proxy = ""
https://stackoverflow.com/questions/6380925
复制相似问题