File: /var/www/web37/htdocs/top100-sexnetzwerk/out.php
<?php
############################################
### Top-XL - Count Hits Out out.php
############################################
/// 1. You are NOT entiteld to rent, lease, transfer, reproduce or distribute this Software.
/// 2. You are entiteld to adapt, and modify the Software to your need.
/// 3. You can use this Script on all of YOUR Domains.
/// 4. Any modification or removal to the links in the footer and member area shall terminate this license immediately .
/// 5. The Script has been tested on different Servers and found free of any notable errors by the author. The Author shall not in any case be liable for any special, incidental indirect or other similar damages arising from the use of this Script.
/// 6. Author: Simon Zehender - Contact: https://www.paddelberg.de
////////////////////////////////////////////
////////////////////////////////////////////
@ini_set ('error_reporting', 0);
@error_reporting (0);
@ini_set ('default_charset', 'utf-8');
header ('Content-Type: text/html; charset=utf-8');
$scriptpath=$_SERVER['DOCUMENT_ROOT'];
include("inc/sql.php");
include("inc/vars.php");
$filenamex = $config['filename']=="index.php" ? '' : $config['filename'];
$fbreak='<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>'.$config['topsitename'].'<</title>
<script language=\"JavaScript\">
<!--
if(top.frames.length > 0)
top.location.href=self.location;
//-->
</script>
</head>
<body>
<div align="center"><br><br><a href="'.$config['topsiteurl'].'/'.$filenamex.'">'.$config['linktitle'].'</a></div>
</body>
</html>';
$erriframe='
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>'.$config['topsitename'].' ERROR!!<</title>
<script language=\"JavaScript\">
<!--
if(top.frames.length > 0)
top.location.href=self.location;
//-->
</script>
<style>
@viewport {
width:device-width;
zoom:1
}
html, body {
height: 100%;
margin: 0;
padding: 0;
overflow: hidden;
font-family: Arial, Helvetica, sans-serif;
text-align: center;
font-size: 1em;
}
#wrapper {
height: 100%;
position: relative;
}
#content {
position: absolute;
top: 0;
bottom: 0;
right: 0;
left: 0;
}
</style>
</head>
<body>
<div id="wrapper">
<div id="content">
<iframe src="'.$config['topsiteurl'].'/'.$filenamex.'" style="width:100%; height:100%; border:0px;" scrolling="auto">
<br><h1>No Authorization!</h1>
<a href="'.$config['topsiteurl'].'/'.$filenamex.'"><span style="color:"FF0000"; font-size:1.1em; font-weight:bold;"><strong>Click here to go to '.$config['linktitle'].'</span></a>
</iframe>
</div>
</div>
</body>
</html>';
function safety ($var)
{return strip_tags (addslashes ($var));}
function get_dom($url)
{
$url=parse_url($url);
$url=$url["host"];
$check=explode(".",$url);
$max=count($check);
if($max>2)
{$url=substr(strstr($url,"."),1);}
return $url;
}
$siteid = !empty ($_GET['id']) ? trim (safety ($_GET['id'])) : '';
if(empty ($siteid) || !is_numeric($siteid))
{
echo $erriframe;
exit;
}
$now=time(); ///// Aktuelle Uhrzeit
$ipchecktime=$now-43200;
$block=time()-$config['ipblock']; ///// Ip Sperre von aktueller Uhrzeit abziehen
$referer = !empty ($_SERVER["HTTP_REFERER"]) ? safety ($_SERVER["HTTP_REFERER"]) : '';// Referer
$fecha = date("Y-m-d-H-i-s");//// Aktuelles Datum mit Uhrzeit
$browser = !empty ($_SERVER["HTTP_USER_AGENT"]) ? safety ($_SERVER["HTTP_USER_AGENT"]) : '';//// Browser abfragen
$language = !empty ($_SERVER["HTTP_ACCEPT_LANGUAGE"]) ? safety ($_SERVER["HTTP_ACCEPT_LANGUAGE"]) : '';//// BrowserSprache abfragen
$ip = getenv("REMOTE_ADDR");
//// Referer überprüfen
if ($config['referercheckout'] == "yes")
{
if (empty ($referer) || !preg_match ("@^".$url_protocols."@", $referer))
{
echo $erriframe;
exit;
}
if (get_dom ($referer) != get_dom ($config['topsiteurl']))
{
echo $erriframe;
exit;
}
}
//// nachschauen, ob es sich um eine gültige siteid handelt
$db -> query ("SELECT id,active FROM ".$topxl_user_table." WHERE id='".$siteid."' and active='yes'");
$idcheckaray = $db -> fetch ();
if (empty ($idcheckaray["id"]))
{
echo $erriframe;
exit;
}
//// nach vohandenem Cookie überprüfen und Daten auslesen
if (isset($_COOKIE['xxxtopo']))
{
$cookie_var = explode(":", $_COOKIE['xxxtopo']);
$userid = safety ($cookie_var[0]);
}
elseif (isset($_COOKIE['xxxtopi']))
{
$cookie2_var = explode(":", $_COOKIE['xxxtopi']);
$userid = safety ($cookie2_var[0]);
}
if (empty ($userid))
{
//// nachschauen, ob ip schon geloggt wurde
$db -> query ("SELECT userid FROM ".$topxl_hits_table." WHERE timestamp >='".$ipchecktime."' AND ip='".$ip."'");
if ($db -> numRows () > 0)
{
$ipcheckaray = $db -> fetch ();
$userid=$ipcheckaray['userid'];
}
else //// wenn keine userid da is, eine generieren
{
$db -> query ("SELECT userid FROM ".$topxl_hits_table." ORDER BY userid DESC");
$idgenaray = $db -> fetch ();
$userid=$idgenaray['userid']+1;
}
}
else
{
$userid=trim($userid);
if(!is_numeric($userid))
{exit;}
}
/// schauen, ob der Eintrag aktive ist - wenn nein, keine Hits zählen und Exit
if ($idcheckaray["active"]=="no")
{
$db -> query ("INSERT INTO ".$topxl_hits_table." (userid,siteid,timestamp,fecha,ip,referer,language,browser,validout) VALUES ('".$userid."','".$siteid."','".$now."','".$fecha."','".$ip."','".$referer."','".$language."','".$browser."','no-notactive')");
/// nicht aktiver Eintrag
$erriframe;
exit;
}
//// herausfinden, wann das letzte reset war und nötigenfalls Monats Hits auf Null stellen
if ($config['lastreset'] < $now-($config['resettime']))
{
$lastresettime1=$now-$config['lastreset'];
$db -> query ("UPDATE ".$topxl_admin_table." SET lastreset='".$now."',lastresettime='".$lastresettime1."'");
$db -> query ("Update ".$topxl_user_table." SET hitin=0,hitout=0");
}
//// stats table leeren
$statsdeletetime=$now-$config['statsdelete'];
$db -> query ("DELETE FROM ".$topxl_hits_table." WHERE timestamp<'".$statsdeletetime."'");
//// nach vohandenem Cookie überprüfen und Daten auslesen
if (isset($_COOKIE['xxxtopo']))
{
////überprüfen, ob Kekssperre aktiv
if ($cookie_var[1] >= $block)
{
//// nachsehen ob schon eine Url unter der id in der Zeitspanne ipblock geklickt wurde
$db -> query ("SELECT * FROM ".$topxl_hits_table." WHERE timestamp >='".$block."' and validout='yes' and (userid='".$userid."' or ip='".$ip."')");
while ($keksklickurlaray = $db -> fetch ())
{
////wenn schon ein Klick in der Zeitspanne ipblock vorhanden ist und der klick nicht der selben Seite zuzuordnen ist
if (!empty ($keksklickurlaray['siteid']) && $keksklickurlaray['siteid']!=$siteid)
{$clickedotherid="yes";}
////Ansonsten Kekssperre aktiv
else
{
$db -> query ("INSERT INTO ".$topxl_hits_table." (userid,siteid,timestamp,fecha,ip,referer,language,browser,validout) VALUES ('".$userid."','".$siteid."','".$now."','".$fecha."','".$ip."','".$referer."','".$language."','".$browser."','no-kekssperre')");echo '1';
echo $fbreak;
exit;
}
}
////wenn schon ein Klick in der Zeitspanne ipblock vorhanden ist und der klick nicht der selben Seite zuzuordnen ist
if ($clickedotherid == "yes" || empty ($keksklickurlaray['siteid']))
{
$db -> query ("INSERT INTO ".$topxl_hits_table." (userid,siteid,timestamp,fecha,ip,referer,language,browser,validout) VALUES ('".$userid."','".$siteid."','".$now."','".$fecha."','".$ip."','".$referer."','".$language."','".$browser."','yes')");
$db -> query ("Update ".$topxl_user_table." SET hitout=hitout+1,hitouttotal=hitouttotal+1 WHERE id='".$siteid."'");
echo $fbreak;
exit;
}
}
/// wenn kekszeitsperre nicht aktiv ist
else
{
setcookie ("xxxtopo", $userid.':'.$now, time()+$config['statsdelete']);
$db -> query ("INSERT INTO ".$topxl_hits_table." (userid,siteid,timestamp,fecha,ip,referer,language,browser,validout) VALUES ('".$userid."','".$siteid."','".$now."','".$fecha."','".$ip."','".$referer."','".$language."','".$browser."','yes')");
$db -> query ("Update ".$topxl_user_table." SET hitout=hitout+1,hitouttotal=hitouttotal+1 WHERE id='".$siteid."'");echo '2';
echo $fbreak;
exit;
}
}
/// wenn kein keks da ist
else
{
//// Überprüfen, ob ip zur siteid schon geloggt wurde
$db -> query ("SELECT ip FROM ".$topxl_hits_table." WHERE timestamp >='".$block."' AND ip='".$ip."' AND siteid='".$siteid."' AND validout='yes' ");
///// Wenn eine ip zum Account gefunden wurde: Verweigerung
if ($db -> numRows () > 0)
{$validout = 'no-ipblock-nokeks';}
///// Wenn die ip nicht gefunden wurde: Eintrag
else
{
$validout = 'yes';
$db -> query ("Update ".$topxl_user_table." SET hitout=hitout+1,hitouttotal=hitouttotal+1 WHERE id='".$siteid."'");
////keks anlegen
setcookie ("xxxtopo", $userid.':'.$now, time()+$config['statsdelete']);
}
$db -> query ("INSERT INTO ".$topxl_hits_table." (userid,siteid,timestamp,fecha,ip,referer,language,browser,validout) VALUES ('".$userid."','".$siteid."','".$now."','".$fecha."','".$ip."','".$referer."','".$language."','".$browser."','".$validout."')");
echo $fbreak;
}
exit;
?>