コード例 #1
0
 function LoadComparer()
 {
     StatisticProvider::LogProcess("LOAD COMPARER YEAR: " . $this->Year);
     $this->Comparer = new StatisticYear($this->Year - 1, 0, 0);
     $this->Comparer->LoadMonths();
     if (!$this->Comparer->Load()) {
         $this->Comparer = null;
     }
 }
コード例 #2
0
 function AggregateDayEntranceExitPageCount($_table, $_exit = false, $_secondaryGroupField = "")
 {
     if (StatisticProvider::$AggregateDomains) {
         $_secondaryGroupField = "";
     }
     StatisticProvider::LogProcess("AggregateDayEntranceExitPageCount DAY: " . $this->Day);
     queryDB(true, "DELETE FROM `" . $_table . "` WHERE" . $this->GetDateMatch() . ";");
     $result = queryDB(true, "SELECT COUNT(`urli`) as `pamount`,`urli` FROM (SELECT DISTINCT(`browser_id`) as `bid`,(SELECT `url` FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSER_URLS . "` WHERE `" . DB_PREFIX . DATABASE_VISITOR_BROWSER_URLS . "`.`browser_id`=`bid` ORDER BY `entrance` " . ($_exit ? "DESC" : "ASC") . " LIMIT 1) as `urli` FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSER_URLS . "` INNER JOIN `" . DB_PREFIX . DATABASE_VISITOR_BROWSERS . "` AS `vb` ON `" . DB_PREFIX . DATABASE_VISITOR_BROWSER_URLS . "`.`browser_id`=`vb`.`id` WHERE `vb`.`is_chat`=0 AND " . ($_exit ? "`vb`.`last_active` < " . (time() - StatisticProvider::$TimeoutTrack) . " AND " : "") . "`entrance`>=" . @mysql_real_escape_string($this->Delimiters[0]) . " AND `entrance`<=" . @mysql_real_escape_string($this->Delimiters[1]) . ") AS `subt` INNER JOIN `" . DB_PREFIX . DATABASE_VISITOR_DATA_PAGES . "` AS t1 ON urli=t1.`id` GROUP BY `t1`.`path`" . $_secondaryGroupField . " ORDER BY `pamount` DESC LIMIT " . StatisticProvider::$DayItemAmount . ";");
     while ($row = mysql_fetch_array($result, MYSQL_BOTH)) {
         queryDB(true, "INSERT INTO `" . $_table . "` (`year`,`month`,`day`,`url`,`amount`) VALUES (" . $this->GetSQLDateValues() . ",'" . @mysql_real_escape_string($row["urli"]) . "','" . @mysql_real_escape_string($row["pamount"]) . "');");
     }
 }