Главная Форум Файлы
Вы находитесь: Wow World Game » [скрипт] Проверка бана персонажа, аккаунта, ip. - wow-portal-Форум
  • Страница 1 из 1
  • 1
Модератор форума: zevs  
[скрипт] Проверка бана персонажа, аккаунта, ip.
attleДата: Пятница, 02.09.2011, 02:07 | Сообщение # 1

Сообщений: 63
Награды: 1
Репутация: 156
Вместо вывода громоздких таблиц банов, скромное окно, где можно посмотреть конкретный бан, а не читать все подряд.


Пусть только тот, кого заблокировали, знает за что он заблокирован.


Code


<?php  
$conf = array(  
"rdb" => "auth",                 // имя базы реалмов  
"cdb" => "characters",      // имя базы персонажей  
"db_host" => "localhost",  // хост базы MySQL  
"db_port" => "3306",         // порт базы MySQL  
"db_login" => "root",          // логин базы MySQL  
"db_pass" => "6655",        // пароль базы MySQL  
"db_ench" => "utf8"           // кодировка соединения  
);  

// функция получения реального ip адреса  
function get_ip() {  
        if (!empty($_SERVER['HTTP_CLIENT_IP']))  
            $ip = $_SERVER['HTTP_CLIENT_IP'];  
        elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))  
            $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];  
        else  
            $ip = $_SERVER['REMOTE_ADDR'];  

        return $ip;  
}  

// подключение и установка кодировки  
$conn = mysql_connect($conf['db_host'].":".$conf['db_port'], $conf['db_login'], $conf['db_pass']) or die ("Невозможно соединится с базой MySQL: ".mysql_error());  
mysql_query("SET NAMES '".$conf['db_ench']."'");  

// определяем переменные  
$inf = NULL;  
if (isset($_POST['check'], $_POST['key'])) {  
        $check = mysql_real_escape_string($_POST['check']);  
        $key = $_POST['key'];  
}  
else {  
        $check = NULL;  
        $key = NULL;  
}  

// проверка ip  
if ($key == 1)  
{  
        if (empty($_POST['check']))  
            $inf = "Введите IP.";  
        elseif (!preg_match("/^[0-9]+.[0-9]+.[0-9]+.[0-9]/i", $check))  
            $inf = "Проверьте правильность ввода IP.";  
        else {  
            $res = mysql_fetch_row(mysql_query("SELECT * FROM `".$conf['rdb']."`.`ip_banned` WHERE `ip` = '".$check."'"));  
            if ($res != NULL)  
            {  
                if ($res[1] == $res[2])  
                    $unbandate = "никогда";  
                else  
                    $unbandate = date("d.m.Y H:m", $res[2]);  

                $inf = "IP заблокирован по причине: ".$res[4]."<br/>Заблокировал: ".$res[3]."<br/>Дата разблокировки: ".$unbandate;  
            }  
            else  
                $inf = "IP не заблокирован.";  
        }  
}  

// проверка аккаунта  
if ($key == 2)  
{  
        if (empty($_POST['check']))  
            $inf = "Введите имя аккаунта.";  
        elseif (!preg_match("/^\w*$/", $check))  
            $inf = "Проверьте правильность ввода имени аккаунта.";  
        else {  
            $res = mysql_fetch_row(mysql_query("SELECT * FROM `".$conf['rdb']."`.`account_banned` WHERE `id` = (SELECT `id` FROM `".$conf['rdb']."`.`account` WHERE `username` = '".$check."') AND `active` = '1'"));
            if ($res != NULL)  
            {  
                if ($res[1] == $res[2])  
                    $unbandate = "никогда";  
                else  
                    $unbandate = date("d.m.Y H:m", $res[2]);  

                $inf = "Аккаунт заблокирован по причине: ".$res[4]."<br/>Заблокировал: ".$res[3]."<br/>Дата разблокировки: ".$unbandate;  
            }  
            else  
                $inf = "Аккаунт не заблокирован.";  
        }  
}  

// проверка персонажа  
if ($key == 3)  
{  
        if (empty($_POST['check']))  
            $inf = "Введите имя персонажа.";  
        elseif (!preg_match("/^[a-zA-Zа-яА-Я]+/u", $check))  
            $inf = "Проверьте правильность ввода имени персонажа.";  
        else {  
            $res = mysql_fetch_row(mysql_query("SELECT * FROM `".$conf['cdb']."`.`character_banned` WHERE `guid` = (SELECT `guid` FROM `".$conf['cdb']."`.`characters` WHERE `name` = '".$check."') AND `active` = '1'"));  
            if ($res != NULL)  
            {  
                if ($res[1] == $res[2])  
                    $unbandate = "никогда";  
                else  
                    $unbandate = date("d.m.Y H:m", $res[2]);  

                $inf = "Персонаж заблокирован по причине: ".$res[4]."<br/>Заблокировал: ".$res[3]."<br/>Дата разблокировки: ".$unbandate;  
            }  
            else  
                $inf = "Персонаж не заблокирован.";  
        }  
}  

mysql_close($conn);  
?>  

<div align="center">  
        <?php     
          if($inf == NULL)  
              echo "Ваш IP адрес: ".get_ip()."<br/></br>";  
          else  
              echo $inf."<br/></br/>";  
        ?>  
        <form name="form" method="post">  
            <select selected="key" name="key">  
                <option value="1">IP</option>  
                <option value="2">Аккаунт</option>  
                <option value="3">Персонаж</option>  
            </select>  
            <input type="text" name="check" />  
            <input type="submit" name="submit" value="Проверить" />  
        </form>  
</div>  

 
  • Страница 1 из 1
  • 1
Поиск: