"; $passed_arr['ref'] = str_replace($find, $replace, $passed_arr['ref']); //echo "ref=".$passed_arr['ref']."
"; $query_part = parse_query(urldecode($passed_arr['ref'])); // print_r($query_part); $findname = array("p", "string", "OVRAW", "YSMRAW", "q", "searchfor", "search", "terms", "keywords", "req", "kw", "ss", "searchKey", "query", "keyword", "tsearch", "qry", "qkw"); foreach($query_part as $keyname => $value) { $$keyname = $value; // echo "key in ukw=".$keyname."
"; } foreach($findname as $value) { if($$value>''){ $kw = $$value; //echo "findname in ukw=".$value."
"; break; } } //echo "kw=".$kw."
"; if (strpos($kw, " ") === false && strlen($kw)>30 && strpos($kw, "-") === false && strpos($kw, "://") === false) {$kw="";} $find = array('||', '\\'); $replace = array('&', ''); $kw = str_replace($find, $replace, $kw); $pass_arr['ukw'] = $kw = strtolower(trim(urldecode($kw))); //echo "kw=".$kw."
"; //exit; return $kw; } function parse_query($val){ /** * Use this function to parse out the query array element from * the output of parse_url(). */ $var = parse_url($val, PHP_URL_QUERY); $var = html_entity_decode($var); $var = explode('&', $var); $arr = array(); foreach($var as $val) { $x = explode('=', $val); $arr[$x[0]] = $x[1]; } unset($val, $x, $var); return $arr; } function getmicrotime() { list($usec, $sec) = explode(" ", microtime()); return ((float)$usec + (float)$sec); } function help_by_id($id, $mysql_link){ $query = "SELECT * FROM as_help WHERE ID in ({$id}) and Status = 'Active' ORDER BY RAND() limit 1"; $result = mysqli_query($mysql_link, $query); while ($row = mysqli_fetch_array($result)) { $content = $row['Info']; } return $content; } function content_by_id($id, $wa, $mysql_link){ $query = "SELECT * FROM as_content WHERE ContentID in ({$id}) and Status = 'Active' ORDER BY RAND() limit 1"; $result = mysqli_query($mysql_link, $query); while ($row = mysqli_fetch_array($result)) { $content = $row['Content']; } if(!empty($wa)){ foreach ($wa as &$value) { $content = add_links_to_text($value, $content, $mysql_link); } } return $content; } function add_links_to_text($words, $content, $mysql_link){ if(is_numeric($words)){ $query = "select Href, Words from as_creatives c join as_creatives_words w using (CreativeID) where w.WordsID = {$words} ORDER BY RAND() limit 1"; } else { $query = "select Href, Words from as_creatives c join as_creatives_words w using (CreativeID) where w.Words = '{$words}' ORDER BY RAND() limit 1"; } //echo "query=".$query."
"; $result = mysqli_query($mysql_link, $query); while ($row = mysqli_fetch_array($result)) { //echo "href=".$row['Href']."
"; $anchor = "".$row['Words'].""; $content = str_replace($row['Words'],$anchor, $content); } return $content; } function article_content($mysql_link){ $query = "SELECT ContentID, Title, Author FROM as_content WHERE Author >''"; $result = mysqli_query($mysql_link, $query); while ($row = mysqli_fetch_array($result)) { $articles[] = $row;; } // print_r($articles); return $articles; } function products_by_id($id, $kw, $mysql_link){ $id_where = ($id>'') ? " and ProductID in ({$id}) ":""; $kw_where = ($kw>'') ? " and Keywords like '%{$kw}%' ":""; $query = "SELECT SUBSTRING(URL FROM INSTR(URL, '&url')+5) as MURL, p.* FROM as_products p where 1 {$id_where} {$kw_where} order by 1"; // echo "query=".$query."
"; exit; $result = mysqli_query($mysql_link, $query); while ($row = mysqli_fetch_array($result)) { $products[] = $row;; } // print_r($articles); return $products; } function tax_news_by_id($id, $kw, $wa, $mysql_link, $lmt=1){ $id_where = ($id>'') ? " and feedID in ({$id}) ":""; $kw_where = ($kw>'') ? " and ItemDescription like '%{$kw}%' ":""; $query = "select * from (select i.feedID, i.feedActive, m.ItemTitle, m.ItemDescription, left(m.ItemPubDate_t,10) as PubDay, m.ItemAuthor, m.ItemSource, m.ItemLink from feedInfo i join feedItems m using (feedID) where 1 {$id_where} {$kw_where} order by m.ItemPubDate_t desc limit {$lmt}) as t1 order by rand()"; $result = mysqli_query($mysql_link, $query); while ($row = mysqli_fetch_array($result)) { if(!empty($wa)){ foreach ($wa as &$value) { $row['ItemDescription'] = add_links_to_text($value, $row['ItemDescription'], $mysql_link); } } $taxnews[] = $row;; } return $taxnews; } function get_okw($mysql_link){ $findname = array("OVKEY", "YSMKEY", "askw"); foreach($_GET as $keyname => $value) { if (in_array($keyname, $findname)) { $kw = urlencode($value); } } if($_SESSION['kwid']>''){ $query = "select Keyword from yahoo_keywords where KWID = '".trim($_SESSION['kwid'])."' limit 1;"; //echo $query; $result = mysqli_query($mysql_link, $query); while ($row = mysqli_fetch_array($result)) { $kw = $row['Keyword']; } } return $kw; } function get_ukw(){ $findname = array("p", "string", "OVRAW", "YSMRAW", "q", "st", "terms", "keywords", "req", "kw"); foreach($_GET as $keyname => $value) { if (in_array($keyname, $findname)) { $kw = urlencode($value); } } return $kw; } function calc_browseragent_id($agent) { if (is_null($agent)) { $agent = ''; } $id = sprintf('%08X', crc32($agent)); if ($id <= '') { $id = 0; } return $id; } function calc_browser_profile_id() { $k_list = array('HTTP_USER_AGENT', 'HTTP_ACCEPT_LANGUAGE'); $BA_ID = calc_browseragent_id($_SERVER['HTTP_USER_AGENT']); $id_basis_val_list = array(); foreach ($k_list as $k) { $id_basis_val_list[] = is_null($_SERVER[$k]) ? '' : $_SERVER[$k]; } $id = sprintf('%08X', crc32(implode('|', $id_basis_val_list))); if ($id <= '') { $id = 0; } global $mysql_link; if ( is_resource($mysql_link) ) { $q = 'INSERT IGNORE INTO lc_browser_profiles_sticky' . ' (BrowserID, BA_ID, BrowserAgent, BrowserLang)' . sprintf( " VALUES('%s', '%s', '%s', '%s')", $id, $BA_ID, addslashes($_SERVER['HTTP_USER_AGENT']), addslashes($_SERVER['HTTP_ACCEPT_LANGUAGE']) ); $result = mysqli_query($mysql_link, $q); } return $id; } function calc_fingerprint_id() { $k_list = array('HTTP_ACCEPT', 'HTTP_ACCEPT_ENCODING', 'HTTP_ACCEPT_CHARSET'); $fid_basis_val_list = array(); foreach ($k_list as $k) { $fid_basis_val_list[] = is_null($_SERVER[$k]) ? '' : $_SERVER[$k]; } $fid = sprintf('%08X', crc32(implode('|', $fid_basis_val_list))); if ($fid <= '') { $fid = 0; } return $fid; } function check_for_bot($mysql_link){ //global $mysql_link; $bot_found=false; if(strstr(strtolower($_SERVER['HTTP_USER_AGENT']), 'bot') || strstr(strtolower($_SERVER['HTTP_USER_AGENT']), 'spider')){ return true; } $query = "select * from as_bot_agents where Agent like '{$_SERVER['HTTP_USER_AGENT']}'"; //echo "query=".$query; exit; $result = mysqli_query($mysql_link, $query); $numrows = mysqli_num_rows($result); if($numrows>0){ $bot_found=true; if(!$_SESSION['isabot']){insert_bot_data($mysql_link);} $_SESSION['isabot']=true; $from = "info@old.taxprovider.com"; $subject = "check_for_bot"; $data = $_SERVER['HTTP_USER_AGENT']."\t\n"; $data .= $query."\t\n"; //send_mail_func($subject, $data, $from, "ernie@saintgelais.com"); } return $bot_found; } function check_for_hpot($mysql_link){ return; //need to add this back in $hpot_found=false; $query = "SELECT distinct IP, if(Comment LIKE '%Harvester%' or Comment LIKE '%Comment Spammer%',1,0) as isa403, Comment FROM as_bot_data WHERE Comment LIKE 'Honeypot%' and IP = '{$_SERVER['REMOTE_ADDR']}'"; //echo "query=".$query; exit; $result = mysqli_query($mysql_link, $query); while ($row = mysqli_fetch_array($result)) { $hpot_found=true; if($row['isa403']==1){$_SESSION['isa403']=true;} $from = "info@old.taxprovider.com"; $subject = "check_for_hpot"; $data = $_SERVER['REMOTE_ADDR']."\t\n"; $data .= $row['Comment']."\t\n"; $data .= $query."\t\n"; // send_mail_func($subject, $data, $from, "ernie@saintgelais.com"); } return $hpot_found; } function check_for_bottrap($mysql_link){ $bottrap_found=false; $BA_ID = calc_browseragent_id($_SERVER['HTTP_USER_AGENT']); $BrowserID = calc_browser_profile_id(); $query = "SELECT distinct IP, Comment FROM as_bot_data WHERE Comment LIKE 'BotTrap%' and (IP = '{$_SERVER['REMOTE_ADDR']}' and (BA_ID = '{$BA_ID}' or BrowserID = '{$BrowserID}'))"; //echo "query=".$query; exit; $result = mysqli_query($mysql_link, $query); while ($row = mysqli_fetch_array($result)) { $bottrap_found=true; $_SESSION['isabot']=true; $_SESSION['isa403']=true; $from = "info@old.taxprovider.com"; $subject = "check_for_bottrap"; $data = $_SERVER['REMOTE_ADDR']."\t\n"; $data .= $row['Comment']."\t\n"; $data .= $query."\t\n"; send_mail_func($subject, $data, $from, "ernie@saintgelais.com"); } return $bottrap_found; } function check_for_bannedips(){ $bannedips_found=false; if(strpos($_SERVER['REMOTE_ADDR'],'14.141.85') !== false ){ $bannedips_found=true; $_SESSION['isabot']=true; $_SESSION['isa403']=true; $from = "info@old.taxprovider.com"; $subject = "check_for_bannedips"; $data = $_SERVER['REMOTE_ADDR']."\t\n"; send_mail_func($subject, $data, $from, "ernie@saintgelais.com"); } return $bannedips_found; } function check_for_valid_visitor($mysql_link){ if($_SERVER['REMOTE_ADDR']=="75.70.244.151" || $_SERVER['REMOTE_ADDR']=="92.161.7.110" || $_SESSION['isabot'] || $_SESSION['isa403']){ return false; } if($_SERVER['HTTP_ACCEPT_LANGUAGE']<=""){ return false; } $write_record=true; if(check_for_hpot($mysql_link)){ $write_record=false; return false; } if(check_for_bottrap($mysql_link)){ $write_record=false; return false; } if(check_for_bannedips($mysql_link)){ $write_record=false; return false; } $_SESSION['isa403']=false; if(check_for_bot($mysql_link)){ $write_record=false; return false; } //echo "write_record=".__LINE__.$write_record; exit; $testvar = $query."|".$numrows."|".mysqli_error($mysql_link); // if($write_record){send_var_email($testvar);} return $write_record; } function insert_bot_data($mysql_link, $comment="BotInsert"){ /* global $lmysql_link; if(check_for_bot($lmysql_link)){ $comment="BotInsert-H"; } */ $write_record=true; $date = date("Y-m-d H:i:s"); $BA_ID = calc_browseragent_id($_SERVER['HTTP_USER_AGENT']); $BrowserID = calc_browser_profile_id(); $FingerID = calc_fingerprint_id(); $query = "INSERT ignore INTO as_bot_data ( Date, Referrer, IP, BrowserID, BA_ID, FingerID, RequestURI, ASID, Comment) VALUES ('{$date}', '{$_SERVER['HTTP_REFERER']}', '{$_SERVER['REMOTE_ADDR']}', '{$BrowserID}', '{$BA_ID}', '{$FingerID}', '{$_SERVER['REQUEST_URI']}', '{$_COOKIE['ASID']}', '{$comment}');"; //echo $query; $result = mysqli_query($mysql_link, $query); $numrows = mysqli_affected_rows($mysql_link); $testvar = $query."|".$numrows."|".mysqli_error($mysql_link); $iquery = "INSERT ignore INTO as_browser_details ( BA_ID, BrowserAgent, CreatedOn) VALUES ('{$BA_ID}', '{$_SERVER['HTTP_USER_AGENT']}', '{$date}');"; //echo $query; $iresult = mysqli_query($mysql_link, $iquery); // send_var_email($testvar); $from = "info@old.taxprovider.com"; $subject = "insert_bot_data"; $data = $_SERVER['HTTP_USER_AGENT']."\t\n"; $data .= $query."\t\n"; $data .= $iquery."\t\n"; $hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']); $hosts = gethostbynamel($hostname); if(is_array($hosts)){ foreach($hosts as $host){ $data .= "host =".$host."\t\n"; } } $data .= "IP =".$_SERVER['REMOTE_ADDR']."\t\n"; $data .= "hostname =".$hostname."\t\n"; if($numrows<=0){ $write_record=false; } else { //send_mail_func($subject, $data, $from, "ernie@saintgelais.com"); } return $write_record; } function write_vars_from_img($cust_data, $mysql_link){ global $mysql_link; //echo $cust_data['kw']; $date = date("Y-m-d H:i:s"); if(!isset($cust_data['Valid'])){$cust_data['Valid']=0;} $query = "INSERT INTO tp_visitors (ASID, Date, Referrer, IP, UserAgent, UserLang, Script, QueryString, ATID, OrigKW, UserKW, Valid) VALUES ('{$cust_data['ASID']}', '{$date}', '{$cust_data['HTTP_REFERER']}', '{$_SERVER['REMOTE_ADDR']}', '{$_SERVER['HTTP_USER_AGENT']}', '{$_SERVER['HTTP_ACCEPT_LANGUAGE']}', '{ ['SCRIPT_URL']}', '{$cust_data['QUERY_STRING']}', '{$_SESSION['atid']}', '{$_SESSION['kw']}', '{$_SESSION['ukw']}', {$cust_data['Valid']});"; //echo "


".$query; $write_record=true; //$write_record=check_for_valid_visitor($mysql_link); if($write_record){ $result = mysqli_query($mysql_link, $query); $numrows = mysqli_affected_rows(); if($numrows==0){$write_record=false;} } return $write_record; } function write_request_uri($uri, $mysql_link){ /*echo("
\n"); 
print_r($_GET); 
echo("
\n"); */ // loop through each querystring variable in the $_GET array and echo out each one's variable name ($keyname) and $value. $findname = array("p", "string", "OVRAW", "YSMRAW", "q"); print_r($_GET); foreach($_GET as $keyname => $value) { echo("$keyname --> $value.
\n"); $okw .= "$keyname --> $value.
\n"; if (in_array($keyname, $findname)) { //if($keyname=='p'){ // $okw = $value; $nkw = urlencode($value); $name = $keyname; } } //exit; $query = "INSERT INTO test_uri (ID, URI, OriginalKW, NewKW, Name) VALUES ('', '{$uri}', '{$okw}', '{$nkw}', '{$name}');"; $result = mysqli_query($mysql_link, $query); } function add_info_to_links($s_atid, $s_kw, $pgnum, $content, $mysql_link){ $atid = "&atid="; $content_length = strlen($content); // echo "content_length=".$content_length."
"; $i=0; $location=0; $portion=$content; while ($i < 20) { $b_atid = ""; $f_atid = ""; $portion = substr($portion,$location); // echo "portion=".$portion."
"; $plocation = strpos($portion, $atid); if($plocation===false){break;} // echo "location=".$plocation." string=".substr($portion,$plocation,strlen($atid))." i=".$i."
"; // echo "nextvar=".substr($portion,$plocation+strlen($atid),1); if(!is_numeric(substr($portion,$plocation+strlen($atid),1))){ $atidval[]=substr($portion,$plocation,strlen($atid)+1); $atidrep[]=substr($portion,$plocation,strlen($atid)).$s_atid.$_SESSION['kwid'].substr($portion,$plocation+strlen($atid),1); } else { if(is_numeric(substr($portion,$plocation+strlen($atid),30))){ $atidval[]=substr($portion,$plocation,strlen($atid)+31); $f_atid=substr($portion,$plocation+strlen($atid),30); // echo "f_atid_before=".$f_atid."
"; if(strlen($pgnum)==3){$f_atid = substr($f_atid,0,15).$pgnum.substr($f_atid,18,12);} // echo "f_atid_after=".$f_atid."
"; for ($r = 1; $r <= 10; $r++) { if(substr($f_atid,($r*3)-3,3)=="000"){ $b_atid .= substr($s_atid,($r*3)-3,3); } else { $b_atid .= substr($f_atid,($r*3)-3,3); } } $atidrep[]=substr($portion,$plocation,strlen($atid)).$b_atid.$_SESSION['kwid'].substr($portion,$plocation+strlen($atid)+30,1); } } $location = $plocation+strlen($atid); $i++; } //echo "kwid=".$_SESSION['kwid']."
"; //print_r($atidval); //print_r($atidrep); $content=str_replace("efilefreeonline","taxmind",$content); $content=str_replace("aaron.php","tax-file-free.php",$content); if($s_kw>''){$content=str_replace("tax-file-free.php?lc=","tax-file-free.php?lc_kw={$s_kw}&lc=",$content);} if(!empty($atidval)){$content=str_replace($atidval,$atidrep,$content);} return $content; } function send_var_email($sendsingle="") { $servervars = array('atid', 'assite', 'aspg', 'date', 'asid', 'ppc', 'kw', 'ukw', 'ASID', 'write_cookie', 'writevars', 'HTTP_USER_AGENT', 'HTTP_ACCEPT_LANGUAGE', 'HTTP_REFERER', 'HTTP_COOKIE', 'REMOTE_ADDR', 'SCRIPT_NAME', 'PHPSESSID', '__utmz', 'SCRIPT_URL', 'QUERY_STRING', 'update_cookie'); $sendmail=true; if($sendmail){ $subject = "Send Vars from ".$_SERVER['SERVER_NAME']; $from = $_SERVER['SCRIPT_NAME']; $data = "From {$from}\t\n"; if($sendsingle>''){ $data .= "\t\n{$sendsingle}\t\n"; } else { if(is_array($_SESSION)){ $data .= "\t\nSession Data\t\n"; foreach($_SESSION as $key => $value){ if(in_array($key,$servervars)){$data .= "{$key}: {$value}\t\n";} } } if(is_array($_SERVER)){ $data .= "\t\nServer Data\t\n"; foreach($_SERVER as $key => $value){ if(in_array($key,$servervars)){$data .= "{$key}: {$value}\t\n";} } } if(is_array($_COOKIE)){ $data .= "\t\nCookie Data\t\n"; foreach($_COOKIE as $key => $value){ if(in_array($key,$servervars)){$data .= "{$key}: {$value}\t\n";} } } if(is_array($_REQUEST)){ $data .= "\t\nRequest Data\t\n"; foreach($_REQUEST as $key => $value){ if(in_array($key,$servervars)){$data .= "{$key}: {$value}\t\n";} } } } $mailsent=send_mail_func($subject, $data, $from); } if($pstate){ $data = str_replace("\t\n", "
", $data); echo $data; echo "mailsent=".$mailsent."
"; exit; } } if (!function_exists('send_mail_func')) { function send_mail_func($subject, $data, $from, $to="ernie@saintgelais.com"){ $message = $data; $email = 'info@old.taxprovider.com'; $headers = 'From: ' . $email . "\t\n" . 'Reply-To: ' . $email . "\t\n" . 'X-Mailer: PHP/' . phpversion(); $sendmail = mail ($to, $subject, $message, $headers); return $sendmail; } } function get_ip_info($ip){ //return; $api_key = "31a8e3511b7eac43727bf892b3ad66e9097ee863"; require "DB-IP/dbip-client.class.php"; $ip_addr = $ip; try { $dbip = new DBIP_Client($api_key); //echo "keyinfo:\n"; foreach ($dbip->Get_Key_Info() as $k => $v) { //echo "{$k}: {$v}\n"; $ip_arr[$k] = $v; } //echo "addrinfo:
"; foreach ($dbip->Get_Address_Info($ip_addr) as $k => $v) { //echo "{$k}: {$v}\n"; if($k=="city" && strpos($v, "(")!==false ){ $v = trim(substr($v, 0, strpos($v, "(")-1)); } $ip_arr[$k] = $v; } } catch (Exception $e) { //die("error: {$e->getMessage()}\n"); $ip_arr['error'] = $e->getMessage(); } return $ip_arr; } ?>