示例#1
0
文件: stat_log.php 项目: romlg/cms36
<?php

/**
 * Назначение скрипта - записать сведения о посетителе сайта в базу
 */
// Использовать новый алгоритм сбора статистики или нет
if (!defined('NEW_STAT')) {
    define('NEW_STAT', false);
}
#### Основной подсчет статистики #############################
if (!class_exists('TStatClass')) {
    include_once 'sms3.6/common/classes/stat.class.php';
}
$stat = new TStatClass();
$sess_id = $stat->getSessId();
// Если нет номера сессии, то не считаем статистику (в старом способе)
if (!NEW_STAT && !$sess_id) {
    return;
}
/***********************************************************/
// Определение статуса документа
/***********************************************************/
$document_status = $GLOBALS['document_status'];
if (empty($document_status)) {
    $document_status = $_SERVER['REDIRECT_STATUS'];
}
if (empty($document_status)) {
    $document_status = 200;
}
/***********************************************************/
// Определение ID пользователя
示例#2
0
 * Назначение скрипта - определить id сессии, после чего сохранить его в куки и
 * в переменную $GLOBALS['statlog_session'] или $GLOBALS['statlog_new_session'], если сессия новая
 */
// время через которое считается сессия (мин.)
if (!defined('STAT_SESS_TIME')) {
    define('STAT_SESS_TIME', 30);
}
// Использовать новый алгоритм сбора статистики или нет
if (!defined('NEW_STAT')) {
    define('NEW_STAT', false);
}
#####################################################
if (!class_exists('TStatClass')) {
    include_once 'sms3.6/common/classes/stat.class.php';
}
$stat = new TStatClass();
// Проверяем, забанен этот ip или нет
if ($stat->isUserBanned() && $_SERVER['REQUEST_URI'] != '/access_denied') {
    redirect("/access_denied");
}
// Проверка сессии пользователя
if (isset($_COOKIE['statlog_session']) && (int) $_COOKIE['statlog_session']) {
    // Если нашли cookie, пишем statlog_session в глобальную переменную
    $GLOBALS['statlog_session'] = $_COOKIE['statlog_session'];
    if (NEW_STAT) {
        // Пишем еще раз, чтобы продлить ее время
        setcookie('statlog_session', $GLOBALS['statlog_session'], time() + STAT_SESS_TIME * 60, '/');
    }
} else {
    if (NEW_STAT) {
        // Не нашли - пытаемся сгенерировать (случайная строка длиной 32 символа)