Вход Регистрация
Файл: 3020.ru/file_3020/_system/core.php
Строк: 100
<?
/**
* принудительно вырубаем глобальные переменные
*/ 

//die('Осуществляется перенос сайта');

if (ini_get('register_globals')) {
  
$allowed = array('_ENV' => 1'_GET' => 1'_POST' => 1'_COOKIE' => 1'_FILES' => 1'_SERVER' => 1'_REQUEST' => 1'GLOBALS' => 1);
  foreach (
$GLOBALS as $key => $value) {
    if (!isset(
$allowed[$key])) {
      unset(
$GLOBALS[$key]);
    }
  }
}

/*
* Корневой каталог
*/
define("ROOT"$_SERVER['DOCUMENT_ROOT'] . '/');

/**
* Cистемные файлы
*/
define("SYS"$_SERVER['DOCUMENT_ROOT'] . '/_system/');

/**
* Путь классов
*/
define("CLASSES"$_SERVER['DOCUMENT_ROOT'] . '/_system/_classes/');

/**
* Путь к функциям
*/
define("FUNC"$_SERVER['DOCUMENT_ROOT'] . '/_system/_function/');

/**
* Папка с временными файлами
*/
define("TMP"$_SERVER['DOCUMENT_ROOT'] . '/_system/tmp/');

/**
* Папка с файлами
*/
define("FILES"$_SERVER['DOCUMENT_ROOT'] . '/_system/files/');

/**
* Путь к ini Файлам
*/
define("INI"$_SERVER['DOCUMENT_ROOT'] . '/_system/_inifiles/');

/**
* Путь к темам
*/
define("DIRTHEME"$_SERVER['DOCUMENT_ROOT'] . '/themes/');

/**
* Путь к инструментам 
*/
define("TOOLS"$_SERVER['DOCUMENT_ROOT'] . '/_system/_tools/');

/**
* Путь к картинкам
*/
define("SRC"$_SERVER['DOCUMENT_ROOT'] . '/_images/');

/**
*Временная Зона
*/
date_default_timezone_set('Europe/Moscow');

# Включаем ошибки
//error_reporting(E_ALL); 
//ini_set('display_errors', true);
# Шлем На хуй ошибки заебали они уже если кому нужно выше код расскоментить
//error_reporting(0);
//ini_set('display_errors', false);
# Старт сессий
session_name('SESS');
session_start();


/*
* Настройки по умолчанию
*/

// Время запуска скрипта
list($msec$sec) = explode(chr(32), microtime()); 
$conf['headtime'] = $sec $msec;
$time time();

$num 0;
$insert null;

/**

* @var  Настройки системы

*/

$default = @parse_ini_file(INI.'settings.default.ini'true);

if (
is_file(INI.'settings.system.dat')) {
  if (
$fset = @file_get_contents(INI.'settings.system.dat'))
  {
      
$set_dinamic unserialize($fset);
  }  
} else {
  
header('Location: /install.php');
  exit;
}

$system = @array_merge($default$set_dinamic);

/**
* Переменные GET по умочанию
*/

if (isset($_GET['id'])) {
  
$ID abs((int) $_GET['id']);
}

/**
* @var  Запрос раздела
*/

if (isset($_GET['func'])) {
    
$func stripcslashes(htmlspecialchars($_GET['func']));
} else {
    
$func 'home';
}

/*
* Классы MySQLi
*/

require '_classes/class.MyPDO.php';
//$system['dbpass'] = '9Z2k7M7p';
# Массив с параметрами
$dbset = array(
    
'server' => $system['dbhost'], 
    
'username' => $system['dbuser'], 
    
'password' => $system['dbpass'], 
    
'db' => $system['dbname'], 
    
'port' => 3306
    
'charset' => 'utf8'
);

try {
    
$sql = new MyPDO('mysql:host=' $dbset['server'] . ';dbname=' $dbset['db'], $dbset['username'], $dbset['password']);
    
$sql->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODEPDO::FETCH_ASSOC);
    
$sql->exec("SET names utf8");
}

catch(
PDOException $e) {
    echo 
$e->getMessage();
}



//require '_classes/class.simpleDB.php';
//require '_classes/class.simpleMysqli.php';
//dbname";s:12:"shop_magazin";s:6:"dbpass";s:15:"qazxswedcvfrtgb";s:6:"dbuser";s:13:"shop_magazin2"
# Массив с параметрами
//$dbset = array('server' => 'localhost', 'username' => 'shop_magazin2', 'password' => 'qazxswedcvfrtgb', 'db' => 'shop_magazin', 'port' => 3306, 'charset' => 'utf8');
//$dbset = array('server' => $system['dbhost'], 'username' => $system['dbuser'], 'password' => $system['dbpass'], 'db' => $system['dbname'], 'port' => 3306, 'charset' => 'utf8');

//$sql = new simpleMysqli('localhost', 'shop_magazin2', 'qazxswedcvfrtgb', 'shop_magazin', '3306');

# Подключение к базе данных
//$sql = new simpleMysqli($dbset);

if ($_SERVER["HTTP_HOST"] != '3020.ru') {
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://3020.ru".$_SERVER['REQUEST_URI']);
exit;
}

/**

* @var IP адрес 

*/

$ipa false;

if(isset(
$_SERVER['HTTP_X_FORWARDED_FOR']) && $_SERVER['HTTP_X_FORWARDED_FOR']!='127.0.0.1' && preg_match("#^([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3})$#",$_SERVER['HTTP_X_FORWARDED_FOR']))
{
    
$ip2['xff'] = $_SERVER['HTTP_X_FORWARDED_FOR'];
    
$ipa[] = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
if(isset(
$_SERVER['HTTP_CLIENT_IP']) && $_SERVER['HTTP_CLIENT_IP']!='127.0.0.1' && preg_match("#^([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3})$#",$_SERVER['HTTP_CLIENT_IP']))
{
    
$ip2['cl'] = $_SERVER['HTTP_CLIENT_IP'];
    
$ipa[] = $_SERVER['HTTP_CLIENT_IP'];
}
if(isset(
$_SERVER['REMOTE_ADDR']) && preg_match("#^([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3})$#",$_SERVER['REMOTE_ADDR']))
{
    
$ip2['add'] = $_SERVER['REMOTE_ADDR'];
    
$ipa[] = $_SERVER['REMOTE_ADDR'];
}

$ip $ipa[0];

$iplong ip2long($ip);

if (isset(
$_SERVER['HTTP_USER_AGENT']))
{
    
$ua $_SERVER['HTTP_USER_AGENT'];
    
$ua strtok($ua'/');
    
$ua strtok($ua'('); // оставляем только то, что до скобки
    
$ua preg_replace('#[^a-z_./ 0-9-]#iu'null$ua); // вырезаем все "левые" символы

    // Опера мини тоже посылает данные о телефоне :)
    
if (isset($_SERVER['HTTP_X_OPERAMINI_PHONE_UA']) && preg_match('#Opera#i',$ua))
    {
        
$ua_om $_SERVER['HTTP_X_OPERAMINI_PHONE_UA'];
        
$ua_om strtok($ua_om'/');
        
$ua_om strtok($ua_om'(');
        
$ua_om preg_replace('#[^a-z_. 0-9-]#iu'null$ua_om);
        
$ua 'Opera Mini ('.$ua_om.')';
    }

}
else 
$ua 'Нет данных';



//$ip .
$signature md5($ua);

/*
* Загрузка всех функций заканчивающиеся названиями *.func.php
* Остальные вызываются принудительно там где нужно их использование
*/ 

$_dirfunc opendir(ROOT '_system/_function/');

while (
$_incfunc readdir($_dirfunc)){
    if (
preg_match('#.func.php$#i'$_incfunc)){
        require_once(
ROOT '_system/_function/' $_incfunc);
    }
}

/**
* Небольшой крон который срабатывает раз в сутки
* после полуночи, редактируем очень осторожно.
*/

//$sql -> delete("DELETE FROM `gosti_online` WHERE `date_last` < '".(time()-6)."'");
if ($system['cron'] <= time()) {
  
  
/*******************************
  * Тут можно добавлять свой код *
  *******************************/
 
$sql -> delete("DELETE FROM `gosti_online` WHERE `date_last` < '".(time()-600)."'");
  
$_dirtmp opendirTMP );

  while (
$_filetmp readdir($_dirtmp)){
      if (!
preg_match('#.htaccess$#i'$_filetmp)){
          @
unlinkTMP $_filetmp);
      }
  }

  
/******************************
  * Дальше ничего не трогаем ****
  ******************************/
  
  
$_CRON $system;
  
$_CRON['cron'] = mktime(000) + (60 60 24);
  @
save_dat($_CRON'settings.system');
}

?>
Онлайн: 1
Реклама