Файл: system/connect.php
Строк: 67
<?php
# Включаем сессии
ob_start();
session_start();
# Подключаемся к базе
$db = array("host" => "localhost", "user" => "имя бд", "pass" => "пароль", "dbname" => "имя юзера бд");
$bd = mysql_connect($db["host"],$db["user"],$db["pass"]);
mysql_select_db($db["dbname"],$bd) or die(mysql_error());
mysql_query("SET NAMES utf8") or die(mysql_error());
# Отсюда запустим все главные функции , через opendir
$opdirbase=opendir(''.$_SERVER["DOCUMENT_ROOT"].'/system/functions');
while ($filebase=readdir($opdirbase)){
if (eregi('.php$',$filebase)){
require_once(''.$_SERVER["DOCUMENT_ROOT"].'/system/functions/'.$filebase);}
}
# $user будет записан в COOKIE
#ОБЯЗАТЕЛЬНО фильтрируем кукки
if(isset($_COOKIE['login']) && isset($_COOKIE['password']))
{
$user = mysql_fetch_assoc(mysql_query("SELECT * FROM `user` WHERE `login` = '".htmlspecialchars($_COOKIE['login'])."' && `password` = '".htmlspecialchars($_COOKIE['password'])."' LIMIT 1"));
# Система уровней в игре, советую тут ничего не трогать.
$level = file("$_SERVER[DOCUMENT_ROOT]/system/exp.txt");
$exp = trim($level[$user['level']+1]);
if($user['opit'] >= $exp){
mysql_query("UPDATE `user` SET `opit`='0', `level` = '".($user['level']+1)."', `silver` = `silver` + '1000*$user[level]', `gold` = `gold` + '15', `train` = `train` + '1', `raiting`= `raiting` + '15' WHERE `id` = '$user[id]'");
}
# Система уровней закончена
# Система уровней в клане, советую тут ничего не трогать.
if(mysql_result(mysql_query("SELECT COUNT(*) FROM `clans_users` WHERE `id_player` = '".$user['id']."' LIMIT 1"),0) != '0'){
$clanUser = mysql_fetch_array(mysql_query("SELECT * FROM `clans_users` WHERE `id_player` = '".$user['id']."' "));
$clan = mysql_fetch_array(mysql_query("SELECT * FROM `clans` WHERE `id` = '".$clanUser['id_clan']."' "));
$lvlClan = file("$_SERVER[DOCUMENT_ROOT]/system/clanexp.txt");
$expClan = trim($lvlClan[$clan['level']+1]);
if($clan['exp'] >= $expClan){
mysql_query("UPDATE `clans` SET `exp` = '0', `level` = '".($clan['level']+1)."', `silver` = `silver` + '1000 * $clan[level]', `gold` = `gold` + '15' WHERE `id` = '".$clan['id']."'");
}
}
# Система уровней закончена
$t = time();
mysql_query("UPDATE `user` SET `online` = '$t' WHERE `id` = '$user[id]' ") or die(mysql_error());
mysql_query("UPDATE `user` SET `ip` = '".filter($_SERVER['REMOTE_ADDR'])."' WHERE `id` = '$user[id]' ") or die(mysql_error());
}
# Бан IP - оповещение
if(mysql_result(mysql_query("SELECT COUNT(id) FROM `ip_ban` WHERE `ip` = '".filter($_SERVER['REMOTE_ADDR'])."'"),0) >= 1){
exit('Ваш IP заблокирован');
}
# Выход
if(isset($_GET['exit'])){
setcookie('login', '', time() - 100, '/');
setcookie('password', '', time() - 100, '/');
header('Location: /index.php');
}
//Защитко
foreach($_GET as $ad){
if(is_numeric($ad)){
$ad = abs(intval($ad));
}
if(preg_match('/include|asc|--|select|union|update|from|where|eval|glob|include|require|script|shell|BENCHMARK|CONCAT|INSERTb/i', $ad)){ //Защита от "плохих" запросов
$source = 'USER: '.$_SERVER['REMOTE_ADDR'].' | FILE: '.htmlspecialchars($_SERVER["REQUEST_URI"]).'';
$file = htmlspecialchars($_SERVER['DOCUMENT_ROOT']).'/system/functions/log91.txt';
$msg = 'Аккаунт заблокирован за попытку взлома сайта';
$time = 259200+time();
$ban = mysql_fetch_array(mysql_query("SELECT * FROM `banned` WHERE `id_user` = '$user[id]'"));
if($ban == false) {
mysql_query("INSERT INTO `banned` SET `id_user` = '$user[id]', `id_adm` = '1', `msg` = '$msg', `time` = '$time'") or die(mysql_error());
}
$Saved_File = fopen($file, 'a+');
fwrite($Saved_File, $source);
fclose($Saved_File);
header('Location:/');
}
$ad = htmlspecialchars(mysql_real_escape_string($ad));
}
foreach($_POST as $ad){
if(is_numeric($ad)){
$ad = abs(intval($ad));
}else{
$ad = htmlspecialchars(mysql_real_escape_string($ad));
}
}
foreach($_SESSION as $ad){
$ad = htmlspecialchars(mysql_real_escape_string($ad));
}
foreach($_COOKIE as $ad){
$ad = htmlspecialchars(mysql_real_escape_string($ad));
}
$id = isset($_GET['id'])?abs(intval($_GET['id'])):NULL;
?>