+// Loads stats table
+function loadStatsTable () {
+ // Do we have it there for today?
+ if (!isStatsTableCreated()) {
+ // Then create a default one
+ createStatsTable();
+ } // END - if
+
+ // Load it from database
+ $result = SQL_QUERY_ESC("SELECT `stats_entry`,`stats_value` FROM `{?_MYSQL_PREFIX?}_stats_%s` ORDER BY `stats_entry` ASC",
+ array(date('Ymd', time())), __FUNCTION__, __LINE__);
+
+ // Read all rows
+ while ($row = SQL_FETCHARRAY($result)) {
+ $GLOBALS['stats'][$row['stats_entry']] = $row['stats_value'];
+ } // END - while
+
+ // Free the result
+ SQL_FREERESULT($result);
+}
+
+// Checks if the the statistics table is created
+function isStatsTableCreated () {
+ // Ask for it
+ $result = SQL_QUERY_ESC("SHOW TABLES LIKE '{?_MYSQL_PREFIX?}_stats_%s'",
+ array(date('Ymd', time())), __FUNCTION__, __LINE__);
+
+ // Do we have a row?
+ return SQL_NUMROWS($result);
+}
+
+// Create the dummy table
+function createStatsTable () {
+ // Create it here
+ $result = SQL_QUERY_ESC("CREATE TABLE IF NOT EXISTS `{?_MYSQL_PREFIX?}_stats_%s` (
+`stats_entry` VARCHAR(100) NOT NULL DEFAULT '',
+`stats_value` BIGINT(20) NOT NULL DEFAULT 0,
+PRIMARY KEY (`stats_entry`)
+) TYPE=HEAP COMMENT='Temporary statistics table'",
+ array(date('Ymd', time())), __FUNCTION__, __LINE__);
+}
+
+// Write all entries to the table
+function writeStatsTable () {
+ // Empty the table first
+ SQL_QUERY_ESC("TRUNCATE `{?_MYSQL_PREFIX?}_stats_%s`",
+ array(date('Ymd', time())), __FUNCTION__, __LINE__);
+
+ // Begin the SQL command
+ $sql = sprintf("REPLACE INTO `{?_MYSQL_PREFIX?}_stats_%s` (`stats_entry`,`stats_value`) VALUES ",
+ date('Ymd', time()));
+
+ // Add all entries to the final query
+ foreach ($GLOBALS['stats'] as $entry=>$value) {
+ $sql .= sprintf("('%s', %s),", $entry, bigintval($value));
+ } // END - foreach
+
+ // Finalize it and run it
+ SQL_QUERY(substr($sql, 0, -1), __FUNCTION__, __LINE__);
+}
+