Вход Регистрация
Файл: system/func.php
Строк: 327
<?php
error_reporting
(0);
##############################
##### ПОДКЛЮЧЕНИЕ К БАЗЕ #####
##############################
$mc mysql_connect('localhost''zogame''7I8m7N6v') or die('Тех работы');
mysql_query('SET NAMES `utf8`'$mc);
mysql_select_db('zogame'$mc) or die('Указанная таблица не найдена');
##################
#### Антиспам ####
##################
function strong($msg)
{
    global 
$db;
    
$msg htmlspecialchars(trim($msg), ENT_QUOTES'UTF-8');
    
$msg $db->real_escape_string($msg);
    
$ant $db->query('SELECT * FROM `antispam_word` ORDER BY `id` DESC');
    while (
$a $db->fetch_assoc($ant))
        
$msg preg_replace("/(".$a['input_text'].")/iu",$a['output_text'],$msg); 
    return 
$msg;
}
##################
##### СЕССИИ #####
##################
session_start();
ob_start();
########################
## ОПРЕДЕЛЯЕМ БРАУЗЕР ##
########################
if (isset($_SERVER["HTTP_USER_AGENT"]) && preg_match('#up-browser|blackberry|windows ce|symbian|palm|nokia|android#i'$_SERVER["HTTP_USER_AGENT"]))
$webbrowser false;
elseif (isset(
$_SERVER["HTTP_USER_AGENT"]) && (preg_match('#windows#i'$_SERVER["HTTP_USER_AGENT"]) ||preg_match('#linux#i'$_SERVER["HTTP_USER_AGENT"]) ||preg_match('#bsd#i'$_SERVER["HTTP_USER_AGENT"]) ||preg_match('#x11#i'$_SERVER["HTTP_USER_AGENT"]) ||preg_match('#unix#i'$_SERVER["HTTP_USER_AGENT"]) ||preg_match('#macos#i'$_SERVER["HTTP_USER_AGENT"]) ||preg_match('#macintosh#i'$_SERVER["HTTP_USER_AGENT"])))
$webbrowser true; else $webbrowser false// определение типа браузера
######################
##### ФИЛЬТРАЦИИ #####
######################
function esc($text,$br=NULL){ // Вырезает все нечитаемые символы  
if ($br!=NULL)  
for (
$i=0;$i<=31;$i++)$text=str_replace(chr($i), NULL$text); 
else{  
for (
$i=0;$i<10;$i++)$text=str_replace(chr($i), NULL$text); 
for (
$i=11;$i<20;$i++)$text=str_replace(chr($i), NULL$text); 
for (
$i=21;$i<=31;$i++)$text=str_replace(chr($i), NULL$text);} 
return 
$text
}

function 
text($m){
    
$m htmlspecialchars($m);
    
$m mysql_escape_string($m);
    return 
$m;
/* Фильтрует текст */
function num($m){
    
$m intval($m);
    
$m abs($m);
    return 
$m;
/* Фильтрует цифры */
################
##### КУКИ #####
################
if (isset($_COOKIE['login']) and isset($_COOKIE['password'])) {
    
$login text($_COOKIE['login']);
    
$password text($_COOKIE['password']);
    
    
$dbs mysql_query("SELECT * FROM `users` WHERE `login` = '".$login."' and `password` = '".$password."' LIMIT 1");
    
$user mysql_fetch_assoc($dbs);
    
    if (isset(
$user['id'])) {
        if (
$user['login'] != $login or $user['password'] != $password) {
            
setcookie('login'''time() - 86400*31);
            
setcookie('password'''time() - 86400*31);
        }
    }
    
    
$users mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `login` = '".$login."' and `password`='".$password."' LIMIT 1"));           

    if(isset(
$user['id']) && $users['login']!=$login or $users['password']!=$password) {
        
setcookie('login'''time() - 86400*31);
        
setcookie('password'''time() - 86400*31); 
    }
}
$myLogin $user['login'];
$myID $user['id'];
$__str round($user['str']/6);
$___str round($user['str']/4);
$_str rand($__str$___str);
$__def round($user['def']/12);
$___def round($user['def']/7);
$_def rand($__def$___def);
if(
$user['health'] < 0)$user['health'] = 0;
if(
$user['energy'] < 0)$user['energy'] = 0;
define('H'$_SERVER['DOCUMENT_ROOT']);
require_once 
H.'/system/auction.php';
require_once 
H.'/system/effects.php';
require_once 
H.'/system/duel.php';
require_once 
H.'/system/gold.php';
require_once 
H.'/system/limit_clan_kazna.php';
require_once 
H.'/system/MySQL_Zapros.php';
require_once 
H.'/system/ten.php';
require_once 
H.'/system/clan_bonus.php';
###########################
##### Инергия и Жизнь #####
###########################
if($user){
$be mysql_fetch_array(mysql_query("SELECT * FROM hp_mp WHERE id_user = '".$user['id']."' LIMIT 1"));
if(
$be['id_user'] != $user['id']){
mysql_query("UPDATE users SET health = '".num($user[max_health]*2)."', energy = '$user[max_energy]' WHERE id = '".$user['id']."' LIMIT 1");
mysql_query("INSERT INTO `hp_mp` SET `id_user` = '$user[id]', `last` = '".time()."'");
}else{
$k_point intval((time()-$be['last'])/10);
if(
$effect_3[on] == 1)$k_point intval((time()-$be['last'])/5);
if(
$k_point >= && isset($user)){
$hp $user['health']+(3*$k_point);
$mp $user['energy']+(1*$k_point);
mysql_query("UPDATE users SET health = '$hp', energy = '$mp' WHERE id = '".$user['id']."' LIMIT 1");
mysql_query("UPDATE hp_mp SET last = '".time()."' WHERE id_user = '$user[id]' LIMIT 1");
}
}
if(
$user['health'] > num($user['max_health']*2))$user['health'] = num($user['max_health']*2);
if(
$user['energy'] > $user['max_energy'])$user['energy'] = $user['max_energy'];
## Записываем IP и онлайн ##
mysql_query("update `users` set `online` = '".time()."', `ip` = '".$_SERVER['REMOTE_ADDR']."',`browser` = '".$_SERVER['HTTP_USER_AGENT']."', `fix_mesto` = '".$_SERVER['PHP_SELF']."', `fix_url` = '".$_SERVER['REQUEST_URI']."' where (`id` = '".$myID."')");
## Если IP не совпадает с баном ##
$ban mysql_query('SELECT * FROM `ban` WHERE `id_user` = "'.$myID.'" AND `last` > "'.time().'" ORDER BY `id` DESC LIMIT 1');
$ban mysql_fetch_array($ban);
if(
$ban['ip'] != $user['ip']){
mysql_query("update `ban` set `ip` = '".$user['ip']."' where (`id` = '".$ban['id']."')");
}
}
###################
##### ФУНКЦИИ #####
###################
function clan_exp_koll($exp){
global 
$user;
$koll mysql_num_rows(mysql_query("SELECT * FROM `bashna`"));
$good mysql_num_rows(mysql_query("SELECT * FROM `bashna` WHERE `side` = 'good'"));
$evil mysql_num_rows(mysql_query("SELECT * FROM `bashna` WHERE `side` = 'evil'"));
if(
$user['side'] == 'good'){
$my $good;
}else{
$my $evil;
}
$domination round($my/$koll*100);
if(
$domination 15)$domination 15;
$exp ceil($exp*$domination/100);
return 
$exp;
}

function 
exp_koll($exp){
global 
$user;
global 
$auction;
global 
$auction_name;
global 
$auction_summa;
global 
$auction_skidka;
if(
$auction == and $auction_name == 'exp' and $user['auction'] >= $auction_summa)$exp += ceil($exp*$auction_skidka/100);
return 
$exp
}

function 
fix_mesto($id){
$user mysql_query("SELECT * FROM `users` WHERE `id` = '".$id."' LIMIT 1");
$user mysql_fetch_assoc($user);
switch(
$user['fix_mesto']){
case 
'/online.php':
$mesto 'Смотрит онлайн';
break;
case 
'/forum.php':
$mesto 'На форуме';
break;
case 
'/chat.php':
$mesto 'В чате';
break;
case 
'/clan.php':
$mesto 'В клане';
break;
case 
'/clan_journal.php':
$mesto 'В клане';
break;
case 
'/cforum.php':
$mesto 'В клане';
break;
case 
'/rating.php':
$mesto 'Смотрит рейтинг';
break;
case 
'/war.php':
$mesto 'Битва за власть';
break;
case 
'/rinok.php':
$mesto 'На площади';
break;
case 
'/main.php':
$mesto 'В городе';
break;
case 
'/profile.php':
$mesto 'Персонаж';
break;
case 
'/duel_batle.php':
$mesto 'В дуэлях';
break;
case 
'/clans.php':
$mesto 'Смотрит рейтинг';
break;
case 
'/drakon.php':
$mesto 'Огнедышащий Дракон';
break;
case 
'/mertvec.php':
$mesto 'Долина мертвецов';
break;
case 
'/boss.php':
$mesto 'Кровавый остров';
break;
case 
'/mail.php':
$mesto 'Почта';
break;
case 
'/coliseum.php':
$mesto 'Колизей';
break;
case 
'/coliseum_rating.php':
$mesto 'Смотрит рейтинг';
break;
case 
'/clan_podzemelie.php':
$mesto 'Клановое подземелье';
break;
case 
'/fights.php':
$mesto 'В сражениях';
break;
}
if(!
$mesto)$mesto 'В поиске';
return 
$mesto;
}

function 
rez_text$text$maxwords 40$maxchar 45 ){
$sep=' ';
$words explode($sep,$text);
$char iconv_strlen($text,'utf-8');
if (
count($words) > $maxwords){        
$text join($separray_slice($words0$maxwords));
}
if ( 
$char $maxchar ){
$sep2='...';
$text iconv_substr$text0$maxchar'utf-8' );
}
return 
$text.$sep2;
}
function 
icons_user($user){
    
$user mysql_query("SELECT * FROM `users` WHERE `id` = '".$user."' LIMIT 1");
    
$user mysql_fetch_assoc($user);
if(
$user['online'] > time()-600){
$image "<img src='/images/icons/".($user['sex'] == 'w' 'w' '')."$user[side].png' width='15px'>";
}else{
$image "<img src='/images/icons/".($user['sex'] == 'w' 'w' '')."$user[side].png' style='opacity: 0.3;' width='15px'>";
}
return 
$image;
}
function 
text_msg($msg){
$bbcode=array();
$bbcode['/n/isU']='<br>';
$bbcode['/[br]/isU']='<br>';
global 
$ank;
if(
$ank['access'] > 0){
$bbcode['/[center](.+)[/center]/isU'] = '<center>$1</center>';
}
if(
$ank['access'] > 0){
$bbcode['/[b](.+)[/b]/isU'] = '<b>$1</b>';
}

if(
$ank['access'] > 0){
$bbcode['/[img](.*)[/img]/isU'] = "<img src='$1'/>$2</img>";
}

if(
$ank['access'] > 0){
$bbcode['/[url=(.+)](.+)[/url]/isU'] = "<a href='$1'>$2</a>";
}
if(
$ank['access'] > 0){
$bbcode['/[a](.+)[/a]/isU'] = "<a>$1</a>";
}
if(
$ank['access'] > 0){
$bbcode['/[color=(.+)](.+)[/color]/isU'] = "<font color='$1'>$2</font>";
}
$bbcode['/[right](.+)[/right]/isU'] = '<left>$1</left>';
if (
count($bbcode))$msg preg_replace(array_keys($bbcode), array_values($bbcode), $msg);
if(
$ank['access'] == 2)$msg "<span class='item-2'>$msg</span>";
if(
$ank['access'] == 1)$msg "<span class='item-1'>$msg</span>";
$msg str_replace(array(':*',':-*'), '<img src="/images/smiles/love.png" alt="*"/>'$msg);
$msg str_replace(array(':)',':-)'), '<img src="/images/smiles/ulibka.png" alt="*"/>'$msg);
$msg str_replace(array('z_z','Z_Z'), '<img src="/images/smiles/spit.png" alt="*"/>'$msg);
$msg str_replace(array(':P',':-P'), '<img src="/images/smiles/izik.png" alt="*"/>'$msg);
$msg str_replace(array(':Z',':-Z'), '<img src="/images/smiles/kras_zloi.png" alt="*"/>'$msg);
$msg str_replace(array('o_o'), '<img src="/images/smiles/ocki.png" alt="*"/>'$msg);
$msg str_replace(array(':bandit'), '<img src="/images/smiles/bandit.png" alt="*"/>'$msg);
$msg str_replace(array(':сердце'), '<img src="/images/smiles/serdce.png" alt="*"/>'$msg);
$msg str_replace(array(':^('), '<img src="/images/smiles/plak.png" alt="*"/>'$msg);
$msg str_replace(array(':F',':-F'), '<img src="/images/smiles/radost.png" alt="*"/>'$msg);
$msg str_replace(array(':u',':-u'), '<img src="/images/smiles/uporot.png" alt="*"/>'$msg);
$msg str_replace(array(':D',':-D'), '<img src="/images/smiles/xixi.png" alt="*"/>'$msg);
$msg str_replace(array(':#',':-#'), '<img src="/images/smiles/zatkniz.png" alt="*"/>'$msg);
$msg str_replace(array(':a',':A'), '<img src="/images/smiles/zlost.png" alt="*"/>'$msg);
return 
$msg;
}
function 
msg($sms,$tip='msg'){
echo 
'<div class="sep-stone"><div class="'.$tip.'"><b><h2> '.$sms.' </h2></b></div></div>';
}
function 
ico($dir,$file){
    
$img '<img src="/images/'.$dir.'/'.$file.'" width="15px" alt="*" />';
    return 
$img;
}
function 
img($dir,$file){
    
$img '<img src="/images/'.$dir.'/'.$file.'" alt="*" />';
    return 
$img;
}
function 
tl($tl){
    
$d=3600*24;
    
$day=floor($tl/$d);
    
$tl=$tl-($d*$day);

    
$hour=floor($tl/3600);
    
$tl=$tl-(3600*$hour);

    
$minute=floor($tl/60);
    
$tl=$tl-(60*$minute);

    
$second=floor($tl);

    
$dayt="".($day>0?"$day д. ":null)."";
    
$hourt="".($hour>0?"$hour ч. ":null)."";
    
$minutet="".($minute>0?"$minute м. ":null)."";
    
$secondt="".($second>0?"$second с. ":null)."";
    
    if(
$day>0){
        
$minutet=NULL;
        
$secondt=NULL;
    }
    if(
$hour>&& $day==0){
        
$secondt=NULL;
        
$dayt=NULL;
    }
    
    return 
"$dayt$hourt$minutet$secondt";
/* Вывод оставшегося времени */

function vremja($time=NULL){
    if (
$time == NULL)$time time();
    
$timep="".date("j M yг. в H:i"$time)."";
    
$time_p[0]=date("j n Y"$time);
    
$time_p[1]=date("H:i"$time);
    
    if (
$time_p[0] == date("j n Y"))$timep date("H:i:s"$time);
    if (
$time_p[0] == date("j n Y"time()-60*60*24))$timep "Вчера в $time_p[1]";
    
    
$timep=str_replace("Jan","Янв",$timep);
    
$timep=str_replace("Feb","Фев",$timep);
    
$timep=str_replace("Mar","Мар",$timep);
    
$timep=str_replace("May","Мая",$timep);
    
$timep=str_replace("Apr","Апр",$timep);
    
$timep=str_replace("Jun","Июня",$timep);
    
$timep=str_replace("Jul","Июля",$timep);
    
$timep=str_replace("Aug","Авг",$timep);
    
$timep=str_replace("Sep","Сент",$timep);
    
$timep=str_replace("Oct","Окт",$timep);
    
$timep=str_replace("Nov","Нояб",$timep);
    
$timep=str_replace("Dec","Дек",$timep);
    return 
$timep;
/* Вывод времени */

function noauth(){
    global 
$user;
    if(isset(
$user['id'])) header('Location: /main');
}

function 
auth(){
    global 
$user;
    if(!isset(
$user['id'])) header('Location: /');
}

function 
access($access 0){
    global 
$user;
    if(
$user['access'] < $accessheader('Location: /main');
}

function 
page($k_page=1){ // Выдает текущую страницу
$page=1;
if (isset(
$_GET['page'])){
if (
$_GET['page']=='end')$page=intval($k_page);elseif(is_numeric($_GET['page'])) $page=intval($_GET['page']);}
if (
$page<1)$page=1;
if (
$page>$k_page)$page=$k_page;
return 
$page;}

function 
k_page($k_post=0,$k_p_str=10){ // Высчитывает количество страниц
if ($k_post!=0){$v_pages=ceil($k_post/$k_p_str);return $v_pages;}
else return 
1;}

function 
str($link='?',$k_page=1,$page=1){ // Вывод номеров страниц (только на первый взгляд кажется сложно ;))
if ($page<1)$page=1;
echo 
"<div class="str">n";
if (
$page!=1)echo "<span class='pag'><a href="".$link."page=".($page-1)."" title='Предыдущая страница (№".($page-1).")'><Назад</a></span> ";else echo "<span class='white'><Назад</span>";
echo 
" | ";
if (
$page!=$k_page)echo " <span class='pag'><a href="".$link."page=".($page+1)."" title='Следующая страница (№".($page+1).")'>Вперёд></a></span>";else echo "<span class='white'>Вперёд></span>";
echo 
"<br />n";
if (
$page!=1)echo "<span class='pag'><a href="".$link."page=1" title='Первая страница'><<</a></span> ";
if (
$page!=1)echo "<span class='pag'><a href="".$link."page=1" title='Страница №1'>1</a></span>";else echo "<span class='white'>1</span>";
for (
$ot=-3$ot<=3$ot++){
if (
$page+$ot>&& $page+$ot<$k_page){
if (
$ot==-&& $page+$ot>2)echo "  ..";
if (
$ot!=0)echo " <span class='pag'><a href="".$link."page=".($page+$ot)."" title='Страница №".($page+$ot)."'>".($page+$ot)."</a></span>";else echo " <span class='white'> ".($page+$ot)."</span>";
if (
$ot==&& $page+$ot<$k_page-1)echo " ..";}}
if (
$page!=$k_page)echo " <span class='pag'><a href="".$link."page=end" title='Страница №$k_page'>$k_page</a></span>";elseif ($k_page>1)echo " <span class='white'>$k_page</span>";
if (
$page!=$k_page)echo " <span class='pag'><a href="".$link."page=end" title='Последняя страница'> >></a></span>";

echo 
"</div>n";
}
function 
n_f($i$tip 0) {

if(
$tip == 1){

$i number_format($i0''''');
}else{

    if($i >= 10000 && $i < 1000000) {
    
      $i = number_format($i, 0, '', '
.');
    
      $i = round($i,1).'
K';
    
    }
elseif($i >= 1000000) {

      $i = number_format($i, 0, '', '
.');
    
      $i = round($i,1).'
M';

    }
    else
    {
      
      $i = number_format($i, 0, '', '''
);
     
    }
    }
    return 
$i;
    
    }
function 
skill($skill){
switch(
$skill){
case 
0:
$class 0;
break;
case 
1:
$class 1;
break;
case 
10:
$class 2;
break;
case 
26:
$class 3;
break;
case 
48:
$class 4;
break;
case 
100:
$class 5;
break;
}
return 
$class;
}
$separ "<div class='separ'></div>";
$random rand(4999,6999);
$ftime strtotime("-1 day 23:59:59");
?>
Онлайн: 0
Реклама