Файл: profi_wm/top/stat.php
Строк: 209
<?php
// by -=ШАХТЕР=- (waphp.ru - качай только тут)
include 'config.php';
//---------------------------------------------------------------
//---------------------------------------------------------------
$title='Статистика';
include_once 'head.php';
echo "".$div1."Статистика</div>";
// ------------------------------ вывод статистики пользователя ---------------------
//проверка ввода id
if (empty($_GET['uid']))
{
echo "<b>Ошибка!</b>n";
print ''.$div4.'<a href="'.$rating_url.'index.php">'.$site_name.'</a> <img src="img/gt.gif" alt=">" /> Статистика</div>';
include "foot_code.php";
exit;
}
$uid=(int)check($_GET['uid']);
// проверка существования учетной записи
$result = mysql_query("SELECT * FROM top_users WHERE uid=$uid");
$row=mysql_fetch_array($result);
if (empty($row))
{
echo "<b>Ошибка!</b>n";
print ''.$div4.'<a href="'.$rating_url.'index.php">'.$site_name.'</a> <img src="img/gt.gif" alt=">" /> Статистика</div>';
include "foot_code.php";
exit;
}
//проверка ввода action
if (empty($_GET['act']))
$act = "";
else
$act = check($_GET['act']);
$site_names = esc2($row['site_name']);
$link = esc2($row['link']);
$admin = esc2($row['admin']);
$status = esc2($row['status']);
$info = esc2($row['info']);
$razdel = $row['razdel'];
$week_day = date("w");
$today = date("Ymd");
// за сегодня
$result = mysql_query("SELECT `host` FROM `weeks` WHERE `uid`=$uid AND `date`=$today LIMIT 1;");
$row = mysql_fetch_array($result);
$host_today = $row['host'];
//----------------------- Место в топе---------------------------
$result = mysql_query("SELECT * FROM `weeks` WHERE `host` >= '$host_today' AND `date`='$today' AND `status` = '".$status."' ORDER BY `host` DESC;");
@$top_place = mysql_num_rows($result);
$page = ceil($top_place/$count_top);
switch ($act)
{
case 'operators':
echo "$top_place. <b>$site_names</b><br/>n";
echo "<a href="go.php?$uid">$link</a><br/>n";
$result = mysql_query("
SELECT `top_operators`.`name`, `top_operators`.`label`, `top_operators_stat`.`count`
FROM `top_operators_stat`
LEFT JOIN `top_operators`
ON `top_operators`.`id` = `top_operators_stat`.`id_operator`
WHERE `date` = $today AND `day_week` = $week_day AND `uid` = $uid
ORDER BY `top_operators_stat`.`count` DESC
");
$oper_array = array();
$summ = 0;
if (mysql_num_rows($result))
{
while ($row = mysql_fetch_assoc($result))
{
$oper_array[] = $row;
$summ += $row['count'];
//echo ((empty($row['name']))? 'Прочие' : $row['name']).': '.$row['count'].'<br/>';
}
}
echo "<b>Статистика по операторам:</b> <br/>n";
foreach ($oper_array AS $position => $row)
{
echo "<img src="img/gt.gif" alt=""> ".((empty($row['name']))? 'Другие' : $row['name']).': '.(round($row['count']/$summ*10000)/100).'%<br/>';
}
echo "Статистика: <a href='stat.php?uid=$uid'>общая</a> | по операторам | <a href='stat.php?act=telinfo&uid=$uid'>по моделям</a><br/>n";
break;
case "telinfo":
$tel = array(
"Siemens",
"Nokia",
"Samsung",
"Motorola",
"LG",
"Sagem",
"SonyEricsson",
"Alcatel",
"Sharp",
"Pantech",
"Panasonic",
"Другие"
);
// подсчет когад браузер не отределен
$result = mysql_query("SELECT `Siemens`,`Nokia`,`Samsung`,`Motorola`,`LG`,`Sagem`,`SonyEricsson`,`Alcatel`,`Sharp`,`Pantech`,`Panasonic`,`Other` FROM `weeks` WHERE `date`=$today AND `day_week`=$week_day AND `uid`=$uid LIMIT 1");
$tel_data = mysql_fetch_row($result);
if (empty($tel_data)) $tel_data = array (0,0,0,0,0,0,0,0,0,0,0,0);
$hour = date("H");
// заголовок
echo "$top_place. <b>$site_names</b><br/>n";
echo "<a href="go.php?$uid">$link</a><br/>n";
echo "<b>Статистика по маркам телефонов:</b> <br/>n";
foreach ($tel_data as $index => $value)
{
echo "<img src="img/gt.gif" alt=""> ".$tel[$index].": $value <br/>n";
}
echo "<b>График посещений по маркам телефонов:</b> <br/>n";
echo "<img src="graphic_tel.php?uid=$uid" alt="tel_models" /> <br/>n";
echo "Статистика: <a href='stat.php?uid=$uid'>общая</a> | <a href='stat.php?act=operators&uid=$uid'>по операторам</a> | по моделям<br/>n";
break;
default: // ======================== Статистика участника ======================
$hour = date("H");
// за сегодня
$result=mysql_query("SELECT `count`,`host` FROM `weeks` WHERE `uid`=$uid AND `date`=$today LIMIT 1;");
$row = mysql_fetch_array($result);
$count_today = $row['count'];
$host_today = $row['host'];
//----------------------- Место в топе---------------------------
//$result=mysql_query("SELECT * FROM `weeks` WHERE `host` >= $host_today AND `date`=$today ORDER BY `host` DESC;");
//$top_place = mysql_num_rows($result);
// за 24 часа
$result = mysql_query("SELECT sum(`count`),sum(`host`) FROM `count_24` WHERE ((`date`=$today-1 AND `hour`>$hour) OR (`date`=$today AND `hour`<=$hour)) AND `uid`=$uid");
$row = mysql_fetch_row($result);
$count_24 = (int)$row[0];
$host_24 = (int)$row[1];
// данные за текущий час
$result = mysql_query("SELECT `count`,`host` FROM `count_24` WHERE `hour`=$hour AND `date`=$today AND `uid`=$uid");
$row=mysql_fetch_row($result);
// поверка наличия записи в базе
if (empty($row))
{
$hour_count = 0;
$hour_host = 0;
}
else
{
$hour_count = (int)$row[0];
$hour_host = (int)$row[1];
}
// ---------------------------- посещения за месяц --------------------
$months = array("Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь");
$today = date("Ym");
$index_month = date("m")-1;
// данные за текущий месяц
$result = mysql_query("SELECT count,host FROM months WHERE date=$today AND uid=$uid");
$row=mysql_fetch_row($result);
// поверка наличия записи в базе
if (empty($row[0]))
{
$this_month_count = 0;
$this_month_host = 0;
}
else
{
$this_month_count = (int)$row[0];
$this_month_host = (int)$row[1];
}
//-------------------------- недельная статистика----------------
$week_day = date("w");
$today = date("Ymd");
// посещений за неделю
$result = mysql_query("SELECT sum(count),sum(host) FROM weeks WHERE uid=$uid");
$row=mysql_fetch_row($result);
$total_week_count = (int)$row[0];
$total_week_host = (int)$row[1];
// ------------------------ онлайн------------------------
// подсчитываем онлайн посетителей
$result = mysql_query("SELECT count(ip) FROM online_ip WHERE uid=$uid");
$row=mysql_fetch_row($result);
$online=(int)$row[0];
// -----------------------Всего---------------------------
$result = mysql_query("SELECT sum(count),sum(host) FROM months WHERE uid=$uid");
$row=mysql_fetch_row($result);
$all_hits = (int)$row[0];
$all_hosts = (int)$row[1];
// -----------------------Пришло Ушло---------------------------
$week_day = date("w");
$today = date("Ymd");
$counts_in_out = mysql_query("SELECT `in`,`out` FROM `weeks` WHERE `date`=$today AND `day_week`=$week_day AND `uid`=$uid LIMIT 1");
$count_row=mysql_fetch_array($counts_in_out);
$in_count = (int)$count_row['in'];
$out_count = (int)$count_row['out'];
/*
-----------------------------------------------------------------
$top_place - место в топе
$count_today - хитов сегодня
$host_today - хостов сегодня
$count_24 - хитов за 24 часа
$host_24 - хостов за 24 часа
$hour_count - хитов за этот час
$hour_host - хостов за этот час
$this_month_count - хитов за этот месяц
$this_month_host - хостов за этот месяц
$total_week_count - хитов за эту неделю
$total_week_host - хостов за эту неделю
$online - онлайн посетителей
$all_hits - всего хитов
$all_hosts - всего хостов
$in_count - пришло в топ
$out_count - ушло из топа
-----------------------------------------------------------------
*/
//$page = ceil($top_place/$count_top);
if ((($i+1)+($count_top*($page-1)))==1)echo '<img src="img/medal1.gif" alt="gold" /> ';
else if ((($i+1)+($count_top*($page-1)))==2)echo '<img src="img/medal2.gif" alt="silver" /> ';
else if ((($i+1)+($count_top*($page-1)))==3)echo '<img src="img/medal3.gif" alt="bronze" /> ';
// заголовок
echo "<b>".$top_place."</b>. <b>$site_names</b><br/>n";
echo "<a href="go.php?$uid">$link</a><br/>n";
echo "<img src="img/gt.gif" alt="" /> $info<br/>";
echo "<img src="img/online.gif" alt="" /> On-line: <a href="online_tel.php?uid=$uid">$online</a> <br/>n";
$r = mysql_fetch_array(mysql_query("SELECT name FROM razdels WHERE id=$razdel"));
$razdel = base64_decode($r['name']);
echo "<b>Категория:</b> $razdel<br/>n";
echo "<b>Админ:</b> $admin <br/>n";
echo "<b>Место в ТОП-100:</b> $top_place<br/>n";
echo "<b>Сегодня</b> Хосты: <b>$host_today</b> | Хиты: <b>$count_today</b><br/>n";
echo "Из топа: <b>$out_count</b> | В топ: <b>$in_count</b><br/>n";
echo "<b>За 1 час</b> Хосты: <b>$hour_host</b> | Хиты: <b>$hour_count</b><br/>n";
echo "<b>За 24 часа</b> Хосты: <b>$host_24</b> | Хиты: <b>$count_24</b><br/>n";
echo "<b>За неделю</b> Хосты: <b>$total_week_host</b> |Хиты: <b>$total_week_count</b><br/>n";
echo "<b>За ".$months[$index_month]."</b> Хосты: <b>$all_hosts</b> | Хиты: <b>$all_hits</b><br/>n";
echo "<b>Всего</b> Хосты: <b>$all_hosts</b> | Хиты: <b>$all_hits</b><br/>n";
echo "Статистика: общая | <a href='stat.php?act=operators&uid=$uid'>по операторам</a> | <a href='stat.php?act=telinfo&uid=$uid'>по моделям</a><br/>n";
echo '<a href="24h.php?uid='.$uid.'">24 часа</a> | <a href="weeks.php?uid='.$uid.'">7 дней</a><br />';
break;
}
$row=mysql_fetch_array(mysql_query("SELECT * FROM top_users WHERE uid=$uid"));
if($row['status']=='user') $index = 'index';
else if($row['status']=='new') $index = 'newsites';
else if($row['status']=='ban') $index = 'ban';
$result = mysql_query("SELECT * FROM `weeks` WHERE `host` >= $host_today AND `date`='$today' AND `status` = '".$row['status']."' ORDER BY `host` DESC;");
@$top_place = mysql_num_rows($result);
$page = ceil($top_place/$count_top);
print ''.$div4.'<a href="'.$rating_url.'index.php">'.$site_name.'</a> <img src="img/gt.gif" alt=">" /> <a href="'.$index.'.php?p='.$page.'">'.$link.'</a> <img src="img/gt.gif" alt=">" /> Статистика</div>';
include "foot_code.php";
?>