function get_ukid($passed_arr){
global $pass_arr;
$find = array('%26');
$replace = array('||');
//echo "ref=".$passed_arr['ref']."
";
$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.