1. Гость, мы просим Вас ознакомиться с Правилами Форума и Отказом от ответственности!

1.5.1 (101) Востановление SQL для личного кабинета.

Тема в разделе 'PW Вопросник', создана пользователем TwoStar, 16 дек 2014.

Статус темы:
Закрыта.
  1. TopicStarter Overlay

    TwoStar Пользователи

    Сообщения:
    246
    Лайки:
    30
    Пол:
    Мужской
    Репутация:
    0
    Доброго времени суток! Был у меня когда-то ЛК, теперь остались только файлы от него. SQL был утерян. Как можно восстановить базу по файлам? В каких именно файлах искать структуру и т.д И Есть энтузиасты которые готовы помочь?);(
  2. HolaRiva Пользователи

    Сообщения:
    232
    Лайки:
    62
    Пол:
    Женский
    Репутация:
    0
    Страна:
    Russian Federation Russian Federation
    Наверное найти твой личный кабинет в шаре, взять оттуда SQL дамп и залить его к себе. не?
    Ну конечно если это был не самописный ЛК
  3. TopicStarter Overlay

    TwoStar Пользователи

    Сообщения:
    246
    Лайки:
    30
    Пол:
    Мужской
    Репутация:
    0
    В том то и дело что он самописный :(
    --- добавлено: 16 дек 2014 в 14:34 ---
    Вот часть кода index.php (возможно кто узнает)
    Код:
    <?
    session_start();
    
    error_reporting(0);
    
    
    include "config.php";
    
    function cuint($data)
    {
        if($data < 64)
                return strrev(pack("C", $data));
        else if($data < 16384)
                return strrev(pack("S", ($data | 0x8000)));
        else if($data < 536870912)
                return strrev(pack("I", ($data | 0xC0000000)));
        return strrev(pack("c", -32) . pack("I", $data));
    }
    
    function SysSendMail($Receiver, $Title, $Message, $ItemID, $Count, $Count_Max, $Octets, $Proctype, $Expire_date, $Guid1, $Guid2, $Mask, $Money)
    {
    include "config.php";
        $tID = "\x00\x00\x01\x58";
        $SysID = "\x00\x00\x00\x20";
        $SysType = "\x03";
      
        $Receiver = pack("N*", $Receiver);
        $Title = iconv("UTF-8", "UTF-16LE", $Title);
            $TitleLengh = strlen($Title);
            if($TitleLengh < 128)
            {
                $TitleLengh = pack("C*", $TitleLengh);
            }
            else
            {
                $TitleLengh = pack("n*", $TitleLengh + 32768);
            }
        $Message = iconv("UTF-8", "UTF-16LE", $Message);
            $MessageLengh = strlen($Message);
            if($MessageLengh < 128)
            {
                $MessageLengh = pack("C*", $MessageLengh);
            }
            else
            {
                $MessageLengh = pack("n*", $MessageLengh + 32768);
            }
        $ItemID = pack("N*", $ItemID);
        $Pos = "\x00\x00\x00\x00";
        $Count = pack("N*", $Count);
        $Count_Max = pack("N*", $Count_Max);  
        $Octets = pack("H*", $Octets);
            $OctetsLenght = pack("n*", strlen($Octets) + 32768);  
        $Proctype = pack("N*", $Proctype);
        $Expire_date = pack("N*", $Expire_date);
        $Guid1 = pack("N*", $Guid1);
        $Guid2 = pack("N*", $Guid2);
        $Mask = pack("N*", $Mask);
        $Money = pack("N*", $Money);
      
        $Packet = $tID.$SysID.$SysType.$Receiver.$TitleLengh.$Title.$MessageLengh.$Message.$ItemID.$Pos.$Count.$Count_Max.$OctetsLenght.$Octets.$Proctype.$Expire_date.$Guid1.$Guid2.$Mask.$Money;
            $PacketLenght = strlen($Packet);
            if($PacketLenght < 128)
            {
                $PacketLenght = pack("C*", $PacketLenght);
            }
            else
            {
                $PacketLenght = pack("n*", $PacketLenght + 32768);
            }
    
        $Packet = "\x90\x76".$PacketLenght.$Packet;
    
        $sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
        if(!$sock)
        {
                die(socket_strerror(socket_last_error()));
        }
        if(socket_connect($sock, $GameServer, $GdeliverydPort))
        {
            socket_set_block($sock);
            if (false !== ($sbytes = socket_send($sock, $Packet, 8192, 0)))
            {
            }
            else
            {
                $Err = 1;
            }
            if (false !== ($rbytes = socket_recv($sock, $buf, 8192, 0)))
            {
            }
            else
            {
                $Err = 2;
            }
            socket_set_nonblock($sock);
            socket_close($sock);
        }
        else
        {
            $Err = 3;
        }
      
        return $Err;
    }
    
    $MySQL_Connect = MySQL_Connect($MySQL_HOST, $MySQL_USER, $MySQL_USER_PASS) or die ("Ошибка соединения с MySQL.");
    MySQL_Select_Db($MySQL_DB, $MySQL_Connect) or die ("Базы {$MySQL_DB} не существует.");
    setlocale(LC_ALL, 'ru_RU.utf-8');
    mysql_query("SET character_set_results='utf8'");
    mysql_query("SET NAMES 'utf8'");
    if($_SESSION['log'] !== 1)
    {
        include "login.php";
        include "notlogin.php";
        echo $NOTLOGIN;
    }
    else
    {
        $Query = MySQL_Query("select * from `users` WHERE `name`='{$_SESSION['login']}'");
        $MONEY = MySQL_result($Query, 0, 'money');
        $BONUS = MySQL_result($Query, 0, 'bonus');
        $GOLOS = MySQL_result($Query, 0, 'golos');
        $Query = MySQL_Query("select * from `testt`.`user_uploads` WHERE `ID`='{$_SESSION['id']}'");
        $AVATAR = MySQL_result($Query, 0, 'image_name');
        // =========================== Выбор перса на главной =========================== //
        if(isset($_POST['choice']))
            {
                /*$ri = $_POST['role'] - $_SESSION['id'];// 1.2.6
                //if($ri > 15 || $ri < 0)
                {
                    echo "<script>alert('Персонаж не принадлежит этому аккаунту.')</script>";
                }*/
                //elseif(ereg("[^0-9]", $_POST['role'], $Txt))
                if(ereg("[^0-9]", $_POST['role'], $Txt))
                {
                    echo "<script>alert('Пожалуйста, не пытайтесь отредактировать HTML код.')</script>";
                }
                else
                {
                    $_SESSION['roleid'] = $_POST['role'];
                }
            }
          
            $sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
            if(!$sock)
            {
                    die(socket_strerror(socket_last_error()));
            }
            if(socket_connect($sock, $GameServer, $GamedbPort))
            {
                socket_set_block($sock);
                $data = cuint(3401)."\x08\x80\x00\x00\x01".pack("N", $_SESSION['id']);
                  
                $sbytes = socket_send($sock, $data, 8192, 0);
                $rbytes = socket_recv($sock, $buf, 8192, 0);
              
                $strlarge = unpack( "H", substr( $buf, 2, 1 ) );
                if(substr($strlarge[1], 0, 1) == "8")
                {
                    $start = 12;
                }
                else
                {
                    $start = 11;
                }
                $rolescount = unpack( "c", substr( $buf, $start, 1 ) );
                $start = $start+1;
                for($rolecount0=0; $i<$rolescount[1]; $i++)
                {
                    $roleid = unpack( "N", substr( $buf, $start, 4 ) );
                    $start = $start+4;
                    $namelarge = unpack( "c*", substr( $buf, $start, 1 ) );
                    $start = $start+1;
                    $rolename = iconv( "UTF-16", "UTF-8", substr( $buf, $start, $namelarge[1] ) );
                    $start = $start+$namelarge[1];
                    if ($roleid[1] == $_SESSION['roleid'])
                    {
                        $select[$i] = ' selected="selected"';
                    }
                    $roles_acc .= <<<HTML
    <option value='{$roleid[1]}'{$select[$i]}>{$rolename}</option>\n
    HTML;
                }
                  
                socket_set_nonblock($sock);
                socket_close($sock);
            }
            else
            {
                die(socket_strerror(socket_last_error()));
            }
            // ======================================================================  //
          
        if($_GET['mod'] == "shop")
        {
            if(isset($_POST['buy']))
            {
                if(ereg("[^0-9]", $_POST['num']))
                {
                    $RESULT .= "Пожалуйста, не пытайтесь отредактировать HTML код.";
                }
                elseif(empty($_SESSION['roleid']))
                {
                    $RESULT .= "Вы не выбрали персонажа.";
                }
                else
                {
                    $_POST['num'] = (int)$_POST['num'];
                    $Query = MySQL_Query("select * from `{$MySQL_SHOP}`.`shop` WHERE `num` = '{$_POST['num']}'");
                    $item = mysql_fetch_array($Query);
                    if($item[price] > $MONEY)
                    {
                        $RESULT .= "У Вас недостаточно средств.";
                    }
                    elseif(SysSendMail($_SESSION['roleid'], "Магазин", "Покупка {$item[name]} за {$item[price]}.", $item[id], $item[count], $item[max_count], $item[octet], 19, $item[expire_date], 0, 0, $item[mask], 0) == 0)
                    {
                        echo "<meta http-equiv='Refresh' content='0;URL=/lk/?mod=ok'>";
                        $moneynow = $MONEY-$item[price];
                        MySQL_Query("UPDATE `{$MySQL_DB}`.`users` SET `money` = '{$moneynow}' WHERE `users`.`id` = '{$_SESSION['id']}'");
                        $date = date("d.m.y H:i");
                        MySQL_Query("INSERT INTO `{$MySQL_DB}`.`logs` (`type`, `id1`, `id2`, `text`, `date`, `value`) VALUES ('1', '{$_SESSION['id']}', '{$_SESSION['roleid']}', 'Покупка {$item[name]}.', '{$date}', '-{$item[price]} монет')");
                    }
                    else
                    {
                        $RESULT .= "Не удалось купить.";
                    }
                }
            }
            if(isset($_POST['choice']))
            {
                /*$ri = $_POST['role'] - $_SESSION['id'];// 1.2.6
                //if($ri > 15 || $ri < 0)
                {
                    echo "<script>alert('Персонаж не принадлежит этому аккаунту.')</script>";
                }*/
                //elseif(ereg("[^0-9]", $_POST['role'], $Txt))
                if(ereg("[^0-9]", $_POST['role'], $Txt))
                {
                    $RESULT .= "Пожалуйста, не пытайтесь отредактировать HTML код.";
    Последнее редактирование модератором: 24 дек 2014
  4. TopicStarter Overlay

    TwoStar Пользователи

    Сообщения:
    246
    Лайки:
    30
    Пол:
    Мужской
    Репутация:
    0
    В общем сделал я лк :) Спасибо за советы...
    Вот пруфчики :) все работает отлично!
    [​IMG]
    [​IMG]

    Реально ли продать это чудо?))) Работает на версиях 1.4.4 1.4.5 и .1.5.1
  5. Joslian AngeliCore Программист Пользователи Open Source Contributor

    Сообщения:
    1.051
    Лайки:
    537
    Пол:
    Мужской
    Репутация:
    2
    Black List
  6. TopicStarter Overlay

    TwoStar Пользователи

    Сообщения:
    246
    Лайки:
    30
    Пол:
    Мужской
    Репутация:
    0
    А оно есть в шаре?)
  7. NetSpirit B L A C K    L I S T Пользователи

    Сообщения:
    1.390
    Лайки:
    374
    Пол:
    Мужской
    Репутация:
    5
    на лк рикко похоже, или echo, да и вообще это чужая разработка
  8. DeadTime Пользователи

    Сообщения:
    30
    Лайки:
    7
    Пол:
    Мужской
    Репутация:
    0
    Команда:
    polymorph
    Дак это же вылитый лк Ricco
  9. TopicStarter Overlay

    TwoStar Пользователи

    Сообщения:
    246
    Лайки:
    30
    Пол:
    Мужской
    Репутация:
    0
    Понял ))) не продаю
  10. LiptoN[Triton] Пользователи

    Сообщения:
    441
    Лайки:
    209
    Пол:
    Мужской
    Репутация:
    2
    Страна:
    Russian Federation Russian Federation
    Лично я бы такое даже не купил за 100р
  11. TopicStarter Overlay

    TwoStar Пользователи

    Сообщения:
    246
    Лайки:
    30
    Пол:
    Мужской
    Репутация:
    0
    молодец какой! возьми булочку с полки и положи на место.
  12. DeadTime Пользователи

    Сообщения:
    30
    Лайки:
    7
    Пол:
    Мужской
    Репутация:
    0
    Команда:
    polymorph
    Так он и так шаровый, лол
  13. TopicStarter Overlay

    TwoStar Пользователи

    Сообщения:
    246
    Лайки:
    30
    Пол:
    Мужской
    Репутация:
    0
    Можно ссылку? В нем 2 системы автодоната ... топ игроков, топ кланов ... рефералка
  14. NetSpirit B L A C K    L I S T Пользователи

    Сообщения:
    1.390
    Лайки:
    374
    Пол:
    Мужской
    Репутация:
    5
    Дам ссылку в обмен на контакты по просьбе в личке :D

    //удалили
  15. MorzE nullptr AngeliCore Пользователи

    Сообщения:
    198
    Лайки:
    134
    Пол:
    Мужской
    Репутация:
    3
    Страна:
    Russian Federation Russian Federation
    Совсем уже охерели...
    DeadTime, NetSpirit и gam1ng нравится это.
  16. Joslian AngeliCore Программист Пользователи Open Source Contributor

    Сообщения:
    1.051
    Лайки:
    537
    Пол:
    Мужской
    Репутация:
    2
    Что в этом особенного?)
  17. TopicStarter Overlay

    TwoStar Пользователи

    Сообщения:
    246
    Лайки:
    30
    Пол:
    Мужской
    Репутация:
    0
    Топик можно удалить, не кто не чего не продает.
Черновик сохранён Черновик удалён
Статус темы:
Закрыта.

Поделиться этой страницей