\n"; echo "

Sorry you have exceeded the number of queries per day allowed for your account.

\n"; exit; } if ($szRet1 < 1) { $szIP = $_SERVER['REMOTE_ADDR']; //echo "\n"; echo "

Not logged in or your browser or firewall has cookies disabled
or your computers date time setting is incorrect. "; echo "To login click here.

"; echo "Information on how to configure your browser to enable cookies is here.

"; echo "If you can\'t resolve your problems, then email $szMailRecipient and please quote your IP=$szIP. \n"; exit; } } function RecordActivity($szDatabase, $szOperation, $szDetails) { global $bRecordActivity, $szTimezone, $nSessionId; if (!$bRecordActivity) return; date_default_timezone_set($szTimezone); $szTime = strftime('%Y-%m-%d %H:%M:%S', time()); $szIpAddr = $_SERVER['REMOTE_ADDR']; $sql = "insert into activity (`datetime`, sessionid, `database`, operation, details) values " . "('$szTime', '$nSessionId', '$szDatabase', '$szOperation', '$szDetails');"; mysql_query($sql); } ////////////////////// Private Functions - not called by other functions ///////////////////// # Sends HTML header and refreshes cookie function RefreshSession($szParametersIn) { global $szTimezone, $nAnonymousLimitPerDay, $bLimitNumberOfReports, $nSessionId; $szRemoteAddr = $_SERVER['REMOTE_ADDR']; date_default_timezone_set($szTimezone); $szTime = strftime('%Y-%m-%d %H:%M:%S', time()); // See if there is a session for this IP address with DateTime within the last day. $sql = "select sessionid, parameters, accountid, reportsrun FROM session where ipaddress='$szRemoteAddr' " . "and DateTime > DATE_SUB('$szTime', INTERVAL 1 DAY) and accountid=0 order by sessionid desc;"; $result = mysql_query($sql); if (!$result) die('Invalid query: ' . mysql_error()); $aRow = mysql_fetch_row($result); $nLoginSuccess = 0; if (!$aRow) { // Session does not exist. Create one and return 1=OK CreateSession(); return 1; } $nSessionId = (int)$aRow[0];# record for activity log $szParametersCurr = $aRow[1];# currently stored parameters for this session $nAccountId = (int)$aRow[2]; $nReportsRun = (int)$aRow[3]; $nReportsRun++; $szParametersOut = $szParametersCurr; # Update session with reports run $sql = "update session set reportsrun=$nReportsRun where sessionid=$nSessionId;"; mysql_query($sql); if ($bLimitNumberOfReports) { $sql = "select sum(reportsrun) from session where session.ipaddress='$szRemoteAddr' and " . "session.datetime > DATE_SUB('$szTime', INTERVAL 1 DAY);";// sum number of reports run from this ip address in the last day $result = mysql_query($sql); if (!$result) die('Invalid query: ' . mysql_error()); $aRow = mysql_fetch_row($result); $nTotalReportsRun = (int)$aRow[0]; if ($nTotalReportsRun > $nAnonymousLimitPerDay) return -1;# session has exceeded allowed number of queries per day } return 1; } function CreateSession() { global $nDaysToKeepLogs, $szTimezone, $link; date_default_timezone_set($szTimezone); $szTime = strftime('%Y-%m-%d %H:%M:%S'); $szRemoteAddr = $_SERVER['REMOTE_ADDR']; $sql = "insert into session (IPaddress, DateTime, AccountId, Expires, ReportsRun) values ('$szRemoteAddr', '$szTime', 0, " . "DATE_ADD('$szTime', INTERVAL 1 DAY), 0);"; $result = mysql_query($sql, $link); if (!$result) die('Invalid query: ' . mysql_error()); if ($nDaysToKeepLogs > 0) { # Do some housekeeping - delete activity and session records older than N days $sql = "delete from session where datetime < DATE_SUB('$szTime', INTERVAL $nDaysToKeepLogs DAY);"; $result = mysql_query($sql, $link); if (!$result) die('Invalid query: ' . mysql_error()); if ($bRecordActivity) { $sql = "delete from activity where datetime < DATE_SUB('$szTime', INTERVAL $nDaysToKeepLogs DAY)"; $result = mysql_query($sql, $link); if (!$result) die('Invalid query: ' . mysql_error()); } } } ?>