Файл: vkolhoze.com/auth_sys/_start_sess.php
Строк: 44
<?
# Настройки системы
$set = array(
'sess_name'=>'uids', // Имя сессии
'cookie_auth'=>'ct', // Имя куки авторизации
'cookie_pass'=>'ashas34', // Часть хэша авторизации куки
'cookie_auth_time'=>(3600*24*365), // Время жизни куки авторизации
'p_str'=>'10' // Элементов на страницу
);
# функция обратимого шифрования с не известной последовательностью
function tron32($str, $opt){
$a = array_merge(array('+','/','='), range('0', '9'), range('a', 'z'), range('A', 'Z'));
$b = str_split('iulEtMg6KXaQmV5pjBdNw7qTkI8xnZ:Uhe2bC$1YsFzLrDf9JPo3cWyG!0OARv4SH');
if($opt==true){
$str_v = strtr($str, array('+'=>'!', '='=>'$', '/'=>':'));
$g = array_combine($b, $a);
$rez = base64_decode(strtr($str_v, $g));
} else {
$g = array_combine($a, $b);
$rez = strtr(base64_encode($str), $g);
}
return $rez;
}
# функция обработки ошибок подключения
function dbError($a){
switch($a){
case '1': echo '<center>Bad MySQL host</center>'; exit; break;
case '2': echo '<center>Wrong MySQL db name</center>'; exit; break;
default: return false; break;
}
}
# Массив данных для подключения к базе данных MySql
$DA = array(
'host'=>'a105042.mysql.mchost.ru', // mysql сервер
'user_name'=>'a105042_1', // Имя пользователя
'password'=>'zx78op0088', // Пароль
'base'=>'a105042_1' // База данных
);
# Подключение к серверу MySql
if(!$GLOBALS['_DB_'] = @mysql_connect($DA['host'], $DA['user_name'], $DA['password'])) dbError('1');
if(!@mysql_select_db($DA['base'], $GLOBALS['_DB_'])) dbError('2');
# Удаление массива подключения к DB
unset($DA);
# Устанавливаем кодировку соединения
mysql_set_charset('utf8');
# Установка переменной подключения
$db = $GLOBALS['_DB_'];
# Активация сессии
session_name($set['sess_name']);
session_start();
$sess_id = mysql_escape_string(session_id()); // ID сессии
# Декодирование куки пользователя
if($_COOKIE[$set['cookie_auth']]!=''){
$ct = $_COOKIE[$set['cookie_auth']];
$ctm['p'] = substr($ct, 0, 10);
$ctm['c'] = substr($ct, 10);
$prov = substr(md5($set['cookie_pass'].$ctm['c']), 0, 10);
if($prov == $ctm['p']){
$return_ct = tron32($ctm['c'], true);
} else $return_ct = null;
}
# Код авторизации
$bin_auth = ($_SESSION['iUser']!=''?$_SESSION['iUser']:$return_ct);
if($bin_auth!=''){
$iAuth = json_decode($bin_auth, true);
$ku = mysql_fetch_assoc(mysql_query('SELECT * FROM `kolhoz_user` WHERE `id`="'.$iAuth['i'].'" and `password`="'.$iAuth['p'].'"'));
if($ku['id']==''){
//unset($_SESSION['iUser']);
//setcookie($set['cookie_auth'], '', time()-1000);
}
}
?>