View file sistem/global_end.dat

File size: 5.08Kb
<?php

if(isset($_SERVER['HTTP_REFERER'])){ $referer=htmlspecialchars(trim($_SERVER['HTTP_REFERER'])); }else{ $referer=''; }
if(isset($_SERVER['HTTP_USER_AGENT'])){ $arbuz=htmlspecialchars(trim($_SERVER['HTTP_USER_AGENT'])); }else{ $arbuz=''; }
if(isset($_SERVER['REMOTE_ADDR'])){ $ip=htmlspecialchars(trim($_SERVER['REMOTE_ADDR'])); }else{ $ip=''; }

$seg_den = date("d");
$dat2 = date("d.m.Y H:i:s");

$stats_site = file($koren_dir.'/data/statstik/stats_site.dat');
$stats_site=explode("<||>",$stats_site[0]);

if($seg_den == $stats_site[0])
{
   $arbuz_dat = file($koren_dir.'/data/statstik/arbuz.dat');
   
   $znach = "0";
   $i='0';
   $var=count($arbuz_dat);
   while($i < $var)
   {
      $arbuz_dat[$i]=trim($arbuz_dat[$i]);
      if($arbuz.'<>'.$ip == $arbuz_dat[$i]){ $znach = "1"; }
      ++$i;
   }
   
   if($znach=='0')//если в базе совпадений нет, то дописываем новый арбуз и реферер//+ хост
   {
      //дописываем арбуз
      $file_arbuz = fopen($koren_dir.'/data/statstik/arbuz.dat', "a+");
      flock ($file_arbuz,LOCK_EX);
      fputs($file_arbuz,$arbuz.'<>'.$ip."\r\n");
      flock ($file_arbuz,LOCK_UN);
      fclose($file_arbuz);
      @chmod("$koren_dir/data/statstik/arbuz.dat", 0666);
      
      if($referer != '')//дописываем referer если он определился
      {
         if($referer != ' ')
         {
            $arbuz_arr=explode("/",$arbuz);
            $referer_arr = explode("/",$referer);
            if($referer_arr[2] != $_SERVER['HTTP_HOST'])
            {
               $str=''.$referer.'<||>'.$arbuz_arr[0].'<||>'.$dat2.'<||>';
               $file_referer = fopen($koren_dir.'/data/statstik/referer_dat.dat', "a+");
               flock ($file_referer,LOCK_EX);
               fputs($file_referer,$str."\n");
               flock ($file_referer,LOCK_UN);
               fclose($file_referer);
               @chmod("$koren_dir/data/statstik/referer_dat.dat", 0666);
            }
         }
      }
      ++$stats_site[1];//увеличил на 1 хост
   }
   ++$stats_site[2];//увеличил на 1 хит
   
   //записываем счётчик
   $file_stats_site = fopen($koren_dir.'/data/statstik/stats_site.dat', "w+");
   flock ($file_stats_site,LOCK_EX);
   fputs($file_stats_site,$stats_site[0].'<||>'.$stats_site[1].'<||>'.$stats_site[2].'<||>'.$stats_site[3].'<||>'.$stats_site[4].'<||>');
   flock ($file_stats_site,LOCK_UN);
   fclose($file_stats_site);
   @chmod("$koren_dir/data/statstik/stats_site.dat", 0666);
   
}else//если наступил новый день
{
   //записываем счётчик
   $file_stats_site = fopen($koren_dir.'/data/statstik/stats_site.dat', "w+");
   flock ($file_stats_site,LOCK_EX);
   fputs($file_stats_site,$seg_den.'<||>1<||>1<||>'.$stats_site[1].'<||>'.$stats_site[2].'<||>');
   flock ($file_stats_site,LOCK_UN);
   fclose($file_stats_site);
   @chmod("$koren_dir/data/statstik/stats_site.dat", 0666);
   
   //дописываем арбуз
   $file_arbuz = fopen($koren_dir.'/data/statstik/arbuz.dat', "w+");
   flock ($file_arbuz,LOCK_EX);
   fputs($file_arbuz,$arbuz.'<>'.$ip."\n");
   flock ($file_arbuz,LOCK_UN);
   fclose($file_arbuz);
   @chmod("$koren_dir/data/statstik/arbuz.dat", 0666);
   
   if($referer != '')//дописываем referer если он определился
   {
      if($referer != ' ')
      {
         $arbuz_arr=explode("/",$arbuz);
         $referer_arr = explode("/",$referer);
         if($referer_arr[2] != $_SERVER['HTTP_HOST'])
         {
            $str=''.$referer.'<||>'.$arbuz_arr[0].'<||>'.$dat2.'<||>';
            $file_referer = fopen($koren_dir.'/data/statstik/referer_dat.dat', "a+");
            flock ($file_referer,LOCK_EX);
            fputs($file_referer,$str."\n");
            flock ($file_referer,LOCK_UN);
            fclose($file_referer);
            @chmod("$koren_dir/data/statstik/referer_dat.dat", 0666);
         }
      }
   }
}

$stats_site = file($koren_dir.'/data/statstik/stats_site.dat');
$stats_site = explode("<||>",$stats_site[0]);

$host=$stats_site[1];
$hit=$stats_site[2];
$v_host=$stats_site[3];
$v_hit=$stats_site[4];

include($koren_dir.'/sistem/online.dat');


///////////////////Код для автоудаления старых записей рефералов
$str = file($koren_dir.'/data/statstik/referer_dat.dat');
$nom=count($str);
if($nom >= "100")//если Записей больше 100, то чистим:)
{
   $file_referer = fopen($koren_dir.'/data/statstik/referer_dat.dat', "w+");
   flock ($file_referer,LOCK_EX);
   $i = "49";//удаляем последние 50 постов
   while($i < $nom)
   {
      fputs($file_referer,$str[$i]);
      ++$i;
   }
   flock ($file_referer,LOCK_UN);
   fclose($file_referer);
   @chmod("$koren_dir/data/statstik/referer_dat.dat", 0666);
}

$endtime=microtime();
$endtime=explode(" ",$endtime);
$endtime=$endtime[0]+$endtime[1];
$generat= $endtime - $starttime;
$generat=round($generat,4);
?>