Вход Регистрация
Файл: o5on.ru/countmini.php
Строк: 98
<?php
list($msec,$sec)=explode(chr(32),microtime());$HeadTime=$sec+$msec;
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
include 
"config.php";
include 
'./inc/config.inc.php';
include 
'./inc/functions.inc.php';
connect_to_db();

//проверка  ввода id
if (empty($_GET['uid'])){
$img = @imageCreateFromGIF("./img/errors.gif");
Header("Content-type: image/gif");
ImageGIF($img);
ImageDestroy($img);
exit;
}
$uid dig($_GET['uid']);
$uid = (int)$uid;

// проверка существования учетной записи
$result mysql_query("SELECT `link`,`cat_id` FROM `users` WHERE `uid`='".$uid."';");
$row=mysql_fetch_row($result);
if (empty(
$row)){
$img = @imageCreateFromGIF("./img/errors.gif");
Header("Content-type: image/gif");
ImageGIF($img);
ImageDestroy($img);
exit;
}
$cat_id $row["cat_id"];

### Обновление даты пользование топом
$time_stamp time ();
$day_time    24*60*60;
mysql_query("
    UPDATE `users`
    SET `date` = 
$time_stamp
    WHERE (`date` + 
$day_time) < $time_stamp AND `uid` = $uid
    LIMIT 1;
"
);

// получаем ip посетителя
$ip $_SERVER['REMOTE_ADDR'];
$ua $_SERVER['HTTP_USER_AGENT'];

$browser  explode("/",$ua);
$user_browser = (string)$browser[0];

// =================== Определение тела и учет в статистике
include "mod_telinfo.php";
// =================== Определение оператора и учет в статистике
include "mod_operators.php";

// текущий час, день недели и дата
$hour date("H");
$day date("d");
$today date("Ymd");
// ------------------------- обнулялка хостов ----------------------------
// извлекаем время последней записи в счетчик хостов
$result mysql_query("SELECT time FROM hits_time WHERE uid=$uid");
$row=mysql_fetch_row($result);
// если время отсутствует, запоминаем
if(empty($row)){
        @
mysql_query("INSERT INTO hits_time VALUES ($uid,$today)");
        
$reset_time $today;
} else 
$reset_time $row[0];
// удаляем записи ip старее суток
if($today != $reset_time){
     @
mysql_query("DELETE FROM hits_ip WHERE uid=$uid");
     @
mysql_query("UPDATE hits_time SET time = $today WHERE uid=$uid");
}
//------------------------------ часовая статистика -------------------------
// данные за текущий час
$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))
{
    
$res mysql_query("SELECT count(*) FROM count_24 WHERE uid=$uid");
    
$data mysql_fetch_row($res);
    
$count_rows $data[0];
    if (
$count_rows >= 24) @mysql_query("DELETE FROM count_24 WHERE uid=$uid ORDER BY id ASC LIMIT 1;");
    @
mysql_query("INSERT INTO count_24 VALUES ('',$uid,$today,$hour,0,0);");
    
$hour_count 0;
    
$hour_host 0;
}else
    {
        
$hour_count $row[0];
        
$hour_host $row[1];
    }
$hour_count++;

// ---------------------------- посещения за месяц --------------------
$today date("Ym");
// данные за текущий месяц
$result mysql_query("SELECT count,host FROM months WHERE date=$today AND uid=$uid");
$row=mysql_fetch_row($result);
// поверка наличия записи в базе
if (empty($row))
{
    @
mysql_query("INSERT INTO months VALUES ('',$uid,$today,0,0);");
    
$this_month_count 0;
    
$this_month_host 0;
}else{
        
$this_month_count $row[0];
        
$this_month_host $row[1];
    }
$this_month_count++;

//-------------------------- недельная статистика----------------
$week_day date("w");
$today date("Ymd");
// получаем дату обнуления недельной статистики
$result mysql_query("SELECT next_mon FROM weeks WHERE uid=$uid ORDER BY id ASC LIMIT 1");
$row=mysql_fetch_row($result);
if (empty(
$row))
{
    
// расчитываем дату обнуления
    
$nextMonday=date("Ymd",mktime(0,0,0,date("m"),date("d")+32));

}
else 
$nextMonday $row[0];
// если сегодня дата обнуления, обнуляем недельную статистику, и расчитываем след дату обнуления
if ($today >= $nextMonday)
{
    
// расчитываем след дату обнуления
    
$nextMonday=date("Ymd",mktime(0,0,0,date("m"),date("d")+32));
    
// обнуляем посещения за прошедшую неделю
    
@mysql_query("DELETE FROM `weeks` WHERE uid = $uid");
    @
mysql_query("DELETE FROM `top_operators_stat` WHERE uid = $uid");

    
### Удаление неактивных пользователей
    
$time_stamp time ();
    
$week_time    7*24*60*60;
    
$sql_result mysql_query("
        SELECT `uid` FROM `users`
        WHERE (
$time_stamp - `users`.`date`) > $week_time
    "
);
    while (
$result mysql_fetch_assoc($sql_result))
    {
        
$del_uid $result['uid'];
        @
mysql_query("DELETE FROM `users` WHERE uid = $del_uid");
        @
mysql_query("DELETE FROM `count_24` WHERE uid = $del_uid");
        @
mysql_query("DELETE FROM `hits_ip` WHERE uid = $del_uid");
        @
mysql_query("DELETE FROM `hits_time` WHERE uid = $del_uid");
        @
mysql_query("DELETE FROM `months` WHERE uid = $del_uid");
        @
mysql_query("DELETE FROM `online_ip` WHERE uid = $del_uid");
        @
mysql_query("DELETE FROM `top_operators_stat` WHERE uid = $del_uid");
        @
mysql_query("DELETE FROM `weeks` WHERE uid = $del_uid");
    }
}
// получаем данные за текущий день недели
$result mysql_query("SELECT cat_id FROM users WHERE uid=$uid");
$row=mysql_fetch_row($result);
if (empty(
$row)) exit;
$cat_id $row[0];
$result mysql_query("SELECT count,host FROM weeks WHERE date=$today AND day_week=$week_day AND uid=$uid LIMIT 1");
$row=mysql_fetch_row($result);
if (empty(
$row))
{
    
// расчитываем дату обнуления
    
$nextMonday=date("Ymd",mktime(0,0,0,date("m"),date("d")+32));
    @
mysql_query("INSERT INTO weeks VALUES ('',$uid,$nextMonday,$today,$week_day,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,$cat_id)");
    
$week_day_count 0;
    
$week_day_host 0;
} else{
        
$week_day_count $row[0];
        
$week_day_host $row[1];
    }
$week_day_count++;

// ======================================== хосты (оптимиз код) ===================================
// чтение текущего ip хита из базы
$result = @mysql_query("SELECT `ip` FROM `hits_ip` WHERE (`ip`='".$ip."' AND `ua`='".$ua."') AND `uid`='".$uid."';");
$row = @mysql_fetch_row($result);
// если адрес отсутствует, плюсуем хост
if(empty($row))
{
    
// защита от накрутки
    
$result mysql_query("SELECT `ip` FROM `hits_ip` WHERE `uid`=$uid ORDER BY `time` DESC  LIMIT 1;");
    
$row mysql_fetch_array($result);
    if (empty(
$row) || ($row['ip'] != $ip))
    {
        
$hour_host++;
        
$week_day_host++;
        
$this_month_host++;
        
mysql_query("INSERT INTO `hits_ip` VALUES ($uid,'$ip','$ua',".time().")");
    }
}
// сохранение посещения
@mysql_query("UPDATE count_24 SET count=$hour_count,host=$hour_host WHERE hour=$hour AND date=$today AND uid=$uid");
@
mysql_query("UPDATE weeks SET count=$week_day_count,host=$week_day_host WHERE date=$today AND day_week=$week_day AND uid=$uid LIMIT 1");
$today date("Ym");
@
mysql_query("UPDATE months SET count=$this_month_count,host=$this_month_host WHERE date=$today AND uid=$uid");


// вывод информации
$result mysql_query("SELECT `type` FROM `users` WHERE `uid`=".$uid."");
$type=mysql_fetch_row($result);

$image=$type[0];

$image chunk_split ($image1'.');
$image explode(".",$image);
$image=$image[1];
if(empty(
$image)) $image 1;


if(
$image>=&& $image<=7){
$img = @imageCreateFromGIF("./img/".$image."m.gif");
}else{
$img = @imageCreateFromGIF("./img/errors.gif");
}

Header("Content-type: image/gif");
ImageGIF($img);
ImageDestroy($img);
$reza mysql_query ("select * from gener");
if (
mysql_affected_rows()==0){
$ins_str "Insert into gener set time='0'";
                   if (
mysql_query ($ins_str)) {
                
$ttttt=0;

                } else {
                    
$msg " ".mysql_error()." ";

                }

            }
else{
$raw mysql_fetch_array ($reza);
$ttttt $raw["time"];
}

list(
$msec,$sec)=explode(chr(32),microtime());
$sekundaround(($sec+$msec)-$HeadTime,4);
$sekunda round(($ttttt+$sekunda)/2,4);
mysql_query ("Update gener set time='".$sekunda."'");

?>
Онлайн: 2
Реклама