Файл: imstat.ru/str/infos.php
Строк: 297
<?php
session_start();
define('NTOP', 1);
$title = 'Информация';
require_once('../system/connect.php');
require_once('../system/core.php');
require_once('../system/function.php');
require_once('head.php');
$isset = mysql_query("SELECT * FROM `".$prefix."sait` WHERE `id` = '".$id."'");
$user = mysql_fetch_array($isset);
$online_sait = mysql_num_rows(mysql_query("SELECT * FROM `".$prefix."sait_online` WHERE `id_sait` = '".$user['id']."'"));
if(mysql_num_rows($isset) == 0){
echo '<div class="topik">Запрещено</div>
<div class="stat">Сайта нет в базе!</div>';
require_once('foot.php');
exit;
}elseif($user['mem'] == 1){
echo '<div class="topik">Запрещено</div><div class="stat">
Вы не можете смотреть статистику данного сайта , так как владелец закрыл её!</div>';
require_once('foot.php');
exit;
}
echo '<div class="topik">Статистика сайта';
if($user['ban'] == 1){
echo ' (Бан)';
}
if($user['plus'] >= 15){
echo ' (Vip)';
}
echo'</div>';
switch($act){
default:
$proverka_reputation = mysql_num_rows(mysql_query("SELECT * FROM `".$prefix."reputation` WHERE `ip` = '".$ip."'"));
$ips = explode('.', $_SERVER['REMOTE_ADDR']);
$ipnum = $ips[3] + $ips[2] * 256 + $ips[1] * 256 * 256 + $ips[0] * 256 * 256 * 256;
$oper = mysql_result(mysql_query ("SELECT `on` FROM `ip` WHERE $ipnum BETWEEN `ip`.`min` AND `ip`.`max` LIMIT 1"),0);
$category = mysql_fetch_array(mysql_query("SELECT * FROM `".$prefix."cat` WHERE `id` = '".$user['category']."'"));
echo '<div class="stat">Адрес: <a href="/out.php?id='.$user['id'].'">http://'.$user['url'].'</a>
<sup><small><a href="/str/infos.php?act=dob_jal&id='.$id.'">жалоба</a></small></sup><br>Категория: <a href="cat.php?act=view&id='.$user['category'].'">'.$category['name'].'</a><br>
Описание: '.$user['about'].'<br>';
if($proverka_reputation == 0 && $oper == 1){
echo 'Рейтинг: [<b>Плюс: '.$user['plus'].'/Минус: '.$user['minus'].'</b>]<br>
[<a href="/str/infos.php?act=reputation_za&id='.$id.'"><img src="/images/plus.gif" alt="+">Плюс</a> | <a href="/str/infos.php?act=reputation_protiv&id='.$id.'"><img src="/images/minus.gif" alt="-">Минус</a>]<br>';
} else {
echo 'Рейтинг: [Плюс: <b>'.$user['plus'].'</b>/Минус: <b>'.$user['minus'].'</b>]<br>';
}
echo'<br><br><img src="http://www.cy-pr.com/e/'.$user['url'].'_4_128.128.128.gif" border="0" width="88" height="15" alt="seo icon"><br><br></div>';
$hostav4era = $user['of_hosts']-$user['hosts'];
$hostavsegod = $user['hosts']-$user['of_hosts'];
$hitsv4era = $user['of_hits']-$user['hits'];
$hitssegod = $user['hits']-$user['of_hits'];
$vtopv4era = $user['of_in']-$user['in'];
$vtopsegod = $user['in']-$user['of_in'];
$outtopv4era = $user['of_out']-$user['out'];
$outtopsegod = $user['out']-$user['of_out'];
echo '<div class="top">Сегодня</div><div class="stat">';
if ($user['of_hosts']>$user['hosts'])echo'Хосты: <b>'.$user['hosts'].'</b> <font color=red>(-'.$hostav4era.')</font><br>'; else echo'Хосты: <b>'.$user['hosts'].'</b> <font color=green>(+'.$hostavsegod.')</font><br>';
if ($user['of_hits']>$user['hits'])echo'Хиты: <b>'.$user['hits'].'</b> <font color=red>(-'.$hitsv4era.')</font><br>'; else echo'Хиты: <b>'.$user['hits'].'</b> <font color=green>(+'.$hitssegod.')</font><br>';
if ($user['of_in']>$user['in'])echo'В топ: <b>'.$user['in'].'</b> <font color=red>(-'.$vtopv4era.')</font><br>'; else echo'В топ: <b>'.$user['in'].'</b> <font color=green>(+'.$vtopsegod.')</font><br>';
if ($user['of_out']>$user['out'])echo'Из топа: <b>'.$user['out'].'</b> <font color=red>(-'.$outtopv4era.')</font><br>'; else echo'Из топа: <b>'.$user['out'].'</b> <font color=green>(+'.$outtopsegod.')</font><br>';
echo'</div><div class="top">Вчера</div><div class="stat">
Хосты: <b>'.$user['of_hosts'].'</b><br>
Хиты: <b>'.$user['of_hits'].'</b><br>
В топ: <b>'.$user['of_in'].'</b><br>
Из топа: <b>'.$user['of_out'].'</b></div>
<div class="top">За 30 дней</div><div class="stat">
Хосты: <b>'.$user['all_hosts'].'</b><br>
Хиты: <b>'.$user['all_hits'].'</b><br>
В топ: <b>'.$user['all_in'].'</b><br>
Из топа: <b>'.$user['all_out'].'</b></div>';
echo'<div class="main"><b>Общая</b> | <a href="http://'.$set['home'].'/str/infos.php?act=hours&id='.$id.'">По часам</a> | <a href="http://'.$set['home'].'/str/infos.php?act=ip&id='.$id.'">По IP</a> | <a href="http://'.$set['home'].'/str/infos.php?act=operators&id='.$id.'">По операторам</a> | <a href="http://'.$set['home'].'/str/infos.php?act=online&id='.$id.'">Онлайн ('.$online_sait.')</a></div>';
break;
case 'hours':
echo '<div class="top">Часы: [Хосты/Хиты]</div><div class="stat">';
for($hour = 0; $hour< 24; $hour++){
$start_time = mktime($hour, 0, 0, date("m"), date("d"), date("Y"));
$finish_time = mktime($hour+1, 0, 0, date("m"), date("d"), date("Y"));
$hosts = mysql_num_rows(mysql_query("SELECT * FROM `".$prefix."hosts` WHERE `time` BETWEEN '".$start_time."' AND '".$finish_time."' AND `id_sait` = '".$id."'"));
$hits = mysql_num_rows(mysql_query("SELECT * FROM `".$prefix."hits` WHERE `time` BETWEEN '".$start_time."' AND '".$finish_time."' AND `id_sait` = '".$id."'"));
if(strlen($hour) == 1){
$hour = '0'.$hour;}
if(strlen($hour + 1) == 1){
$f = '0'.($hour + 1);
}else{
$f = $f + 1;}
echo ''.$hour.':00 - '.($f).':00: [<b>'.$hosts.'/'.$hits.'</b>]<br>';}
echo '</div><div class="main"><a href="http://'.$set['home'].'/str/infos.php?id='.$id.'">Общая</a> | <strong>По часам</strong> | <a href="http://'.$set['home'].'/str/infos.php?act=ip&id='.$id.'">По IP </a> | <a href="http://'.$set['home'].'/str/infos.php?act=operators&id='.$id.'">По операторам</a> | <a href="http://'.$set['home'].'/str/infos.php?act=online&id='.$id.'">По Онлайн ('.$online_sait.')</a></div>';
break;
case 'ip':
$start_time = mktime(00, 00, 00, date("m"), date("d"), date("Y"));
$finish_time = mktime(23, 59, 59, date("m"), date("d"), date("Y"));
$al = mysql_query("SELECT COUNT(`ip`) FROM `".$prefix."hits` WHERE `time` BETWEEN '".$start_time."' AND '".$finish_time."' AND `id_sait` = '".$id."'");
$all = mysql_result($al,0);
$count = mysql_num_rows(mysql_query("SELECT DISTINCT `ip` as `ip`, COUNT(`ip`) AS `count` FROM `".$prefix."hits` WHERE `time` BETWEEN '".$start_time."' AND '".$finish_time."' AND `id_sait` = '".$id."' GROUP BY `ip`"));
if($count > 0){
echo '<div class="top">IP: [Хиты/Проценты]</div><div class="stat">';
$total=intval(($count-1)/$pages)+1;
$page=abs(intval($_GET['page']));
if(empty($page) OR $page < 0){
$page = 1;}
if($page > $total){
$page = $total;}
$past=intval($count/$pages);
$start=$page*$pages-$pages;
$query = mysql_query("SELECT DISTINCT `ip` as `ip`, COUNT(`ip`) AS `count` FROM `".$prefix."hits` WHERE `time` BETWEEN '".$start_time."' AND '".$finish_time."' AND `id_sait` = '".$id."' GROUP BY `ip` LIMIT ".$start.",".$pages."");
while($stata = mysql_fetch_array($query)){
$procent = ($stata['count'] / $all) * 100;
echo ''.$stata['ip'].': [<b>'.$stata['count'].'/'.round($procent, 1).'%</b>]<br>';}
echo'</div>';
navigation($count,$pages,$page,'infos.php?act=ip&id='.$id.'&',$total);
}else{
echo 'Нет статистики по IP для этого сайта сегодня.</div>';}
echo '<div class="main"><a href="http://'.$set['home'].'/str/infos.php?id='.$id.'">Общая</a> | <a href="http://'.$set['home'].'/str/infos.php?act=hours&id='.$id.'">По часам</a> | <strong>По IP</strong> | <a href="http://'.$set['home'].'/str/infos.php?act=operators&id='.$id.'">По операторам</a> | <a href="http://'.$set['home'].'/str/infos.php?act=online&id='.$id.'">По Онлайн ('.$online_sait.')</a></div>';
break;
case 'operators':
$start_time = mktime(0, 0, 0, date("m"), date("d"), date("Y"));
$finish_time = mktime(23, 59, 59, date("m"), date("d"), date("Y"));
$all = mysql_num_rows(mysql_query("SELECT * FROM `".$prefix."hits` WHERE `time` BETWEEN '".$start_time."' AND '".$finish_time."' AND `id_sait` = '".$id."'"));
$opera = mysql_query("SELECT DISTINCT `".$prefix."hits`.`operator`, COUNT(`".$prefix."hits`.`operator`) AS `count`, `".$prefix."ip_name`.`operator` as `name` FROM `".$prefix."hits`, `".$prefix."ip_name` WHERE `".$prefix."hits`.`id_sait` = '".$id."' AND `".$prefix."hits`.`time` BETWEEN '".$start_time."' AND '".$finish_time."' AND `".$prefix."hits`.`operator` = `".$prefix."ip_name`.`id` GROUP BY `".$prefix."hits`.`operator` ORDER BY 2 DESC");
$oper_count = mysql_num_rows($opera);
if($oper_count > 0)
{
echo '<div class="top">Оператор(Страна): [Хиты/Проценты]</div><div class="stat">';
$total=intval(($oper_count-1)/$pages)+1;
$page=abs(intval($_GET['page']));
if(empty($page) OR $page < 0){
$page = 1;}
if($page > $total){
$page = $total;}
$past=intval($oper_count/$pages);
$start=$page*$pages-$pages;
$oper = mysql_query("SELECT DISTINCT `".$prefix."hits`.`operator`, COUNT(`".$prefix."hits`.`operator`) AS `count`, `".$prefix."ip_name`.`operator` as `name` FROM `".$prefix."hits`, `".$prefix."ip_name` WHERE `".$prefix."hits`.`id_sait` = '".$id."' AND `time` BETWEEN '".$start_time."' AND '".$finish_time."' AND `".$prefix."hits`.`operator` = `".$prefix."ip_name`.`id` GROUP BY `".$prefix."hits`.`operator` ORDER BY 2 DESC LIMIT ".$start.",".$pages."");
while($op = mysql_fetch_array($oper)){
$strana = mysql_fetch_array(mysql_query("SELECT * FROM `".$prefix."ip_name` WHERE `operator` = '".$op['name']."'"));
$procent = ($op['count'] / $all) * 100;
echo '['.$strana['coun'].']'.$op['name'].'('.$strana['country'].'): [<b>'.$op['count'].'/'.round($procent, 2).'%</b>]<br>';}
echo'</div>';
navigation($oper_count,$pages,$page,'infos.php?act=operators&id='.$id.'&',$total);
}else{
echo 'Нет статистики по операторам для этого сайта сегодня.</div>';}
echo '<div class="main"><a href="http://'.$set['home'].'/str/infos.php?id='.$id.'">Общая</a> | <a href="http://'.$set['home'].'/str/infos.php?act=hours&id='.$id.'">По часам</a> | <a href="http://'.$set['home'].'/str/infos.php?act=ip&id='.$id.'">По IP</a> | <strong>По операторам</strong> | <a href="http://'.$set['home'].'/str/infos.php?act=online&id='.$id.'">По Онлайн ('.$online_sait.')</a></div>';
break;
case 'online':
$all = mysql_num_rows(mysql_query("SELECT * FROM `".$prefix."sait_online` WHERE `id_sait` = '".$id."'"));
if($all != 0){
echo '<div class="top">UA: [IP/Время]</div><div class="stat">';
$total=intval(($all-1)/$pages)+1;
$page=abs(intval($_GET['page']));
if(empty($page) OR $page < 0){
$page = 1;}
if($page > $total){
$page = $total;}
$past=intval($all/$pages);
$start=$page*$pages-$pages;
$onl = mysql_query("SELECT * FROM `".$prefix."sait_online` WHERE `id_sait` = '".$id."' LIMIT ".$start.",".$pages."");
while($row = mysql_fetch_array($onl)){
echo ''.$row['ua'].': [<b>'.$row['ip'].'/'.data($row['time']).'</b>]<br>';}
echo'</div>';
navigation($all,$pages,$page,'infos.php?act=online&id='.$id.'&',$total);
}else{
echo 'Нет статистики по онлайн для этого сайта сегодня.</div>';
}
echo '<div class="main"><a href="http://'.$set['home'].'/str/infos.php?id='.$id.'">Общая</a> | <a href="http://'.$set['home'].'/str/infos.php?act=hours&id='.$id.'">По часам</a> | <a href="http://'.$set['home'].'/str/infos.php?act=ip&id='.$id.'">По IP</a> | <a href="http://'.$set['home'].'/str/infos.php?act=operators&id='.$id.'">По операторам</a> | <strong>По Онлайн ('.$online_sait.')</strong></div>';
break;
case 'jal':
level(2);
if(isset($_POST['ok'])){
$name = isset($user_data) ? $user_data['login'] : 'Гость';
$comment = filter($_POST['comment']);
$test = mysql_num_rows(mysql_query("SELECT * FROM `".$prefix."sait_comments` WHERE `name` = '".$name."' AND `text` = '".$comment."' AND `time` > '".(time()-500)."' AND `id_sait` = '".$id."'"));
if($test == 0){
$error = '';
if(empty($comment)){
$error .= 'Нет жалоб<br/>';
}
if($user_data){
if($user_data['antiflud'] + $set['antiflud_time'] > time()){
$error .= 'Вы писали сообщение меньше чем '.$set['antiflud_time'].' секунд назад! <br/>';
}}else{
if($set['guest_antiflud'] + $set['antiflud_time'] > time()){
$error .= 'Вы писали сообщение меньше чем '.$set['antiflud_time'].' секунд назад! <br/>';
}}
if(mb_strlen($comment) > 100){
$error .= 'Жалоба содержит больше 100 символов<br/>';
}
if(!empty($error)){
echo '<div class="top">'.$error.'</div>';
}else{
$comment = mysql_query("INSERT INTO `".$prefix."sait_comments` SET `name` = '".$name."', `text` = '".$comment."', `time` = '".time()."', `id_sait` = '".$id."'");
if($user_data){
$update_antiflud = mysql_query("UPDATE `".$prefix."users` SET `antiflud` = '".time()."' WHERE `id` = '".$user_data['id']."'");
}else{
$update_antiflud_guest = mysql_query("UPDATE `".$prefix."settings` SET `value` = '".time()."' WHERE `name` = 'guest_antiflud'");
}
if($comment){
echo '<div class="main">Жалоба добавлена!</div>';
}else{
echo '<div class="top">Жалоба не добавлена!</div>';
}}}}
if($user_data){
echo '<div class="stat"><a href="/str/infos.php?act=dob_jal&id='.$id.'">Добавить</a></div>';
}
$count = mysql_num_rows(mysql_query("SELECT * FROM `".$prefix."sait_comments` WHERE `id_sait` = '".$id."'"));
if($count > 0){
$total=intval(($count-1)/$page_sait_comments)+1;
$page=abs(intval($_GET['page']));
if(empty($page) OR $page < 0){
$page = 1;
}
if($page > $total){
$page = $total;
}
$past=intval($count/$page_sait_comments);
$start=$page*$page_sait_comments-$page_sait_comments;
$comments = mysql_query("SELECT * FROM `".$prefix."sait_comments` WHERE `id_sait` = '".$id."' ORDER BY `time` DESC LIMIT ".$start.",".$page_sait_comments."");
while($row = mysql_fetch_array($comments)){
$start++;
echo '<div class="stat">'.$start.'. <b>'.$row['name'].' ('.data($row['time']).')</b><br/>';
echo $row['text'].'</div>';}
navigation($count,$page_sait_comments,$page,'/str/infos.php?act=jal&id='.$id.'&',$total);
}else{
echo '<div class="stat">Жалоб к данному сайту нет!</div>';
}
echo '<div class="main"><a href="/str/infos.php?id='.$id.'">Назад</a></div>';
break;
case 'dob_jal':
echo '<div class="top">Добавление жалобы</div><div class="stat">
<form action="infos.php?act=jal&id='.$id.'" method="post">
Текст(max. 100):<br/>
<textarea name="comment" ></textarea><br/>
<input name="ok" type="submit" value="Добавить" />
</form></div><div class="main"><a href="/str/infos.php?id='.$id.'">Назад</a></div>';
break;
case 'reputation_za':
echo '<div class="stat">';
$ips = explode('.', $_SERVER['REMOTE_ADDR']);
$ipnum = $ips[3] + $ips[2] * 256 + $ips[1] * 256 * 256 + $ips[0] * 256 * 256 * 256;
$oper = mysql_result(mysql_query ("SELECT `on` FROM `ip` WHERE $ipnum BETWEEN `ip`.`min` AND `ip`.`max` LIMIT 1"),0);
$proverka_reputation = mysql_num_rows(mysql_query("SELECT * FROM `".$prefix."reputation` WHERE `ip` = '".$ip."'"));
if($proverka_reputation == 0 && $oper == 1){
$repa = mysql_query("INSERT INTO `".$prefix."reputation` SET `type` = 'plus', `ip` = '".$ip."', `time` = '".time()."', `id_sait` = '".$id."'");
$plus = mysql_query("UPDATE `".$prefix."sait` SET `plus` = (`plus` + 1) WHERE `id` = '".$id."'");
if($repa && $plus){
echo 'Репутация сайта успешно повышена на 1 единицу!<br/>';
}
else
{
echo 'Репутация не изменена!<br/>';
}
}
else
{
echo 'Вы уже голосовали сегодня, голосовать можно 1 раз за 24 часа!<br/>';
}
echo '<a href="http://'.$set['home'].'/str/infos.php?id='.$id.'">К статистике сайта</a></div>';
break;
case 'reputation_protiv':
echo '<div class="stat">';
$ips = explode('.', $_SERVER['REMOTE_ADDR']);
$ipnum = $ips[3] + $ips[2] * 256 + $ips[1] * 256 * 256 + $ips[0] * 256 * 256 * 256;
$oper = mysql_result(mysql_query ("SELECT `on` FROM `ip` WHERE $ipnum BETWEEN `ip`.`min` AND `ip`.`max` LIMIT 1"),0);
$proverka_reputation = mysql_num_rows(mysql_query("SELECT * FROM `".$prefix."reputation` WHERE `ip` = '".$ip."'"));
if($proverka_reputation == 0 && $oper == 1){
$repa = mysql_query("INSERT INTO `".$prefix."reputation` SET `type` = 'minus', `ip` = '".$ip."', `time` = '".time()."', `id_sait` = '".$id."'");
$plus = mysql_query("UPDATE `".$prefix."sait` SET `minus` = (`minus` + 1) WHERE `id` = '".$id."'");
if($repa && $plus){
echo 'Репутация сайта успешно понижена на 1 единицу!<br/>';
}
else
{
echo 'Репутация не изменена!<br/>';
}
}
else
{
echo '<div class="error">Вы уже голосовали сегодня, голосовать можно 1 раз за 24 часа!</div>';
}
echo '<a href="http://'.$set['home'].'/str/infos.php?id='.$id.'">К статистике сайта</a></div>';
break;
}
require_once('foot.php');
?>