function get_hits_visits_uniques($_dt_start, $_dt_end = 0, $_filters = array()) { $config =& SlimStatConfig::get_instance(); if (!empty($_filters)) { return SlimStat::count_hits_visits_uniques("`dt`>=" . intval($_dt_start) . " AND `dt`<=" . intval($_dt_end), $_filters); } elseif ($_dt_end == 0) { return SlimStat::count_hits_visits_uniques("`dt`>=" . intval($_dt_start)); } elseif ($_dt_end > time()) { return SlimStat::count_hits_visits_uniques("`dt`>=" . intval($_dt_start) . " AND `dt`<=" . intval($_dt_end)); } else { $query = "SELECT `hits`, `visits`, `uniques`"; $query .= " FROM `" . SlimStat::my_esc($config->database) . "`.`" . SlimStat::my_esc($config->dt_table) . "`"; $query .= " WHERE `dt_start`=" . intval($_dt_start) . " AND `dt_end`=" . intval($_dt_end) . " LIMIT 1"; if ($result = mysql_query($query)) { if (mysql_num_rows($result) == 1) { if ($hvu = mysql_fetch_assoc($result)) { return $hvu; } } else { $hvu = SlimStat::count_hits_visits_uniques("`dt`>=" . intval($_dt_start) . " AND `dt`<=" . intval($_dt_end)); $query = "INSERT INTO `" . SlimStat::my_esc($config->database) . "`.`" . SlimStat::my_esc($config->dt_table) . "`"; $query .= " ( `dt_start`, `dt_end`, `hits`, `visits`, `uniques` ) VALUES ( "; $query .= intval($_dt_start) . ", " . intval($_dt_end) . ", " . intval($hvu["hits"]) . ", " . intval($hvu["visits"]) . ", " . intval($hvu["uniques"]) . " )"; //print $query; mysql_query($query); return $hvu; } } } }