Перейти к содержанию
Авторизация  
kopat1ch

Не работает alogin на моде Gta 3 RP

Рекомендуемые сообщения

kopat1ch

Не работает alogin, хотя при входе на сервер пишет, что администратор вошёл.Не открывается менюшка alogin.

cmd:alogin(playerid, params[])
{
    SendClientMessage(playerid, -1, "activated");
    if(GetPVarInt(playerid, "check_adm") > gettime()) return 1;
    SendClientMessage(playerid, -1, "activated2");
    if(AdminLogged[playerid]) return SendClientMessage(playerid, COLOR_GREY, "Вы уже авторизовались как администратор!");
    new string[128];
    format(string, sizeof(string), "SELECT * FROM "T_ADMIN" WHERE `name` = '%s'", GetName(playerid));
    mysql_tquery(dbHandle, string, "adm", "is", playerid, GetName(playerid));
    SetPVarInt(playerid, "check_adm", gettime()+5);
    SendClientMessage(playerid, -1, "activated3");
    return 1;
}

Кейс:

case D_ALOGIN:
        {
            if(!response) return 1;
            new string[144];
            switch(GetPVarInt(playerid,"aLogin"))
            {
            case 1:
                {
                    if(!strlen(inputtext)|| !strcmp(inputtext, "qwerty", true) || strlen(inputtext) < 6 || strlen(inputtext) > 16 || strfind(inputtext, "=", true) != -1)
                    return ShowPlayerDialogEx(playerid, D_ALOGIN, DIALOG_STYLE_PASSWORD, "{ebec86}>> Регистрация администратора", "\
                    {FFFFFF}Введите пароль, который будет от панели администратора\n\n\
                    {f0e86b}Примечание:\n\
                    \t- Пароль должен состоять из латинских букв и цифр\n\
                    \t- Размер пароля от 6 до 15 символов", "Принять", "Отмена");
                    SetPVarString(playerid, "inputtext", inputtext);
                    format(string, sizeof(string), "SELECT * FROM "T_ADMIN" WHERE `name` = '%s'", GetName(playerid));
                    mysql_tquery(dbHandle, string, "AloginReg", "is", playerid, GetName(playerid));
                }
            case 0:
                {
                    if(!strlen(inputtext)) return ShowPlayerDialogEx(playerid, D_ALOGIN, DIALOG_STYLE_PASSWORD, "{ebec86}>> Доступ администратора", "\
                {FFFFFF}Введите Ваш пароль от панели администратора", "Принять", "Отмена");
                    mysql_format(dbHandle, string, sizeof(string), "SELECT * FROM "T_ADMIN" WHERE `name` = '%s' AND `password` = '%e'", GetName(playerid), inputtext);
                    mysql_tquery(dbHandle, string, "AloginAuth", "is", playerid, inputtext);
                    SendClientMessage(playerid,COLOR_YELLOW, "Вы успешно вошли как администратор!");
                }
            }
            return 1;
        }
    }
    return 1;
}


Паблик:

forward Alogin(playerid, name[]);
public Alogin(playerid, name[])
{
    new rows, fields;
    cache_get_data(rows, fields);
    if(!rows)
    {
                if(PI[playerid][pAdmin] > 0) PI[playerid][pAdmin] = 0;
        return 1;


    }
    new Password[16];
    cache_get_field_content(0, "password", Password, dbHandle);
    if(!strcmp(Password, "qwerty", true))
    {
        SetPVarInt(playerid, "aLogin", 1);
        ShowPlayerDialogEx(playerid, D_ALOGIN, DIALOG_STYLE_INPUT, "{ebec86}>> Регистрация администратора", "\
        {FFFFFF}Введите пароль, который будет от панели администратора\n\n\
        {f0e86b}Примечание:\n\
        \t- Пароль должен состоять из латинских букв и цифр\n\
        \t- Размер пароля от 6 до 15 символов", "Принять", "Отмена");
    }
    else
    {
        SetPVarInt(playerid, "aLogin", 0);
        ShowPlayerDialogEx(playerid, D_ALOGIN, DIALOG_STYLE_INPUT, "{ebec86}>> Доступ администратора", "\
        {FFFFFF}Введите Ваш пароль от панели администратора", "Принять", "Отмена");
    }
    return 1;
}

forward AloginReg(playerid, name[]);
public AloginReg(playerid, name[])
{
    new rows, fields;
    cache_get_data(rows, fields);
    if(!rows) return 1;
    new inputtext[16], string[144];
    GetPVarString(playerid, "inputtext", inputtext, sizeof(inputtext));
    mysql_format(dbHandle, string, sizeof(string), "UPDATE "T_ADMIN" SET `password` = '%s' WHERE `name` = '%s' LIMIT 1", inputtext, GetName(playerid));
    mysql_tquery(dbHandle, string, "", "");
    p_info[playerid][pAdmin] = cache_get_row_int(0, 1, dbHandle);
    MysqlUpdatePlayerInt(playerid, "admin", p_info[playerid][pAdmin]);

    if(p_info[playerid][pAdmin] != 9)
    {
        if(p_info[playerid][pSex] == 1) format(string, sizeof(string), "%s[%i] авторизовался.", GetName(playerid), playerid);
        else format(string, sizeof(string), "%s[%i] авторизовалась.", GetName(playerid), playerid);
        SendAdminMessage(COLOR_BLUE, string);
    }
    
    ShowWarningPanelAC(playerid);
    for(new i; i < 10; i++) TextDrawShowForPlayer(playerid, CheatShow[0]), TextDrawShowForPlayer(playerid, CheatShow[1]);

    Iter_Add(Admins, playerid);

    AdminLogged[playerid] = true;
    new day, month, year;
    getdate(year, month, day);
    mysql_format(dbHandle, string, sizeof(string), "UPDATE "T_ADMIN" SET `last_connect` = '%d.%d.%d' WHERE `name` = '%s' LIMIT 1", day, month, year, GetName(playerid));
    mysql_tquery(dbHandle, string, "", "");
    return 1;
}

forward AloginAuth(playerid, inputtext[]);
public AloginAuth(playerid, inputtext[])
{
    new rows, fields;
    cache_get_data(rows, fields);
    if(!rows)
    {
        SendErr(playerid, "Неверный пароль");
        SetPVarInt(playerid, "attempt_pass", GetPVarInt(playerid, "attempt_pass") + 1);
        if(GetPVarInt(playerid, "attempt_pass") > 3)
        {
            DeletePVar(playerid, "attempt_pass");
            Kick(playerid);
        }
    }
    else
    {
        new string[144];
        AdminLogged[playerid] = true;
        p_info[playerid][pAdmin] = cache_get_row_int(0, 1, dbHandle);
        AdminInfo[playerid][admGoto] = cache_get_row_int(0, 6, dbHandle);
        AdminInfo[playerid][admGethere] = cache_get_row_int(0, 7, dbHandle);
        AdminInfo[playerid][admSpectate] = cache_get_row_int(0, 8, dbHandle);
        AdminInfo[playerid][admTimeMin] = cache_get_row_int(0, 9, dbHandle);
        AdminInfo[playerid][admAlog] = cache_get_row_int(0, 10, dbHandle);

        if(p_info[playerid][pAdmin] != 9)
        {
            if(p_info[playerid][pSex] == 1) format(string, sizeof(string), "%s[%i] авторизовался.", GetName(playerid), playerid);
            else format(string, sizeof(string), "%s[%i] авторизовалась.", GetName(playerid), playerid);
            SendAdminMessage(COLOR_BLUE, string);
        }
        
        ShowWarningPanelAC(playerid);
        for(new i; i < 10; i++) TextDrawShowForPlayer(playerid, CheatShow[0]), TextDrawShowForPlayer(playerid, CheatShow[1]);

        Iter_Add(Admins, playerid);

        new day, month, year;
        getdate(year, month, day);
        mysql_format(dbHandle, string, 144, "UPDATE "T_ADMIN" SET `last_connect` = '%d.%d.%d' WHERE `name` = '%s' LIMIT 1", day, month, year, GetName(playerid));
        mysql_tquery(dbHandle, string, "", "");
    }
    return 1;
}

 

Изменено пользователем mikilov

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.