Вопросы

Всем привет! Начал я делать сервер с нуля, сделал регистрацию, но на авторизации вылезла (Слово удалено системой), я 20 раз пересмотрел код и не нашел нигде ошибку, может кто сможет помочь?

 

Спойлер

DialogCreate:PlayerRegistText(playerid)
{
    new string[500];
    format(string, sizeof string,
    "{FFFFFF}\tДобро пожаловать на {ffa500}Visonfa Role-Play!{FFFFFF}\n\
    Данный аккаунт еще не зарегестрирован на нашем сервере\n\
    Для регистрации придумайте пароль и введите его в поле ниже\n\
    \tВаш никнейм: {008000}%s{ffffff}\n\n\
    {FFFF00}• Длинна пароля должна быть от 6 до 32 символов\n\
    • В пароле должны быть только цифры и латинские символы\n\
    • Пароль должен быть надежным",
    Player[playerid][p_name]);
    Dialog_Open(playerid, "PlayerRegist", DSI, "{FFFFFF}Регистрация | {ffa500}Visonfa Role-Play", string, "Далее""Выход");
    return 1;
}

DialogResponse:PlayerRegist(playerid, response, listitem, inputtext[])
{
    if(!response)
    {
        SCM(playerid, -1"Вы прервали регистрацию!");
        return KickEx(playerid);
    }
    new len = strlen(inputtext);
    if(len < 6)
    {
        Dialog_Show(playerid, "PlayerRegistText");
        return SCM(playerid, -1"Длинна пароля должна быть от 6 до 32 символов");
    }
    if(len > 32)
    {
         Dialog_Show(playerid, "PlayerRegistText");
        return SCM(playerid, -1"Длинна пароля должна быть от 6 до 32 символов");
    }
    format(temp_PlayerPassword[playerid], 32, inputtext);
    Dialog_Open(playerid, "PlayerRegistGender", DSM, "{FFFFFF}Регистрация | {ffa500}Visonfa Role-Play""{FFFFFF}Выберите пол вашего персонажа""Мужской""Женский");
    return 1;
}

DialogResponse:PlayerRegistGender(playerid, response, listitem, inputtext[])
{
    new string[500];

    new MaleSkin[] = {2315};
    new FamSkin[] = {394164};
    new skin = response ? MaleSkin[random(sizeof(MaleSkin))] : FamSkin[random(sizeof(FamSkin))];

    mysql_format(connect, string, sizeof string,
    "INSERT INTO `users`(`id`, `name`, `password`, `reg_ip`, `reg_data`, `gender`, `skin`) VALUES (NULL, '%s', '%s', '%s', '%d', '%d', '%d')",
    Player[playerid][p_name], temp_PlayerPassword[playerid], Player[playerid][p_ip], gettime(), response, skin);
    mysql_query(connect, string);
    Player[playerid][p_id] = cache_insert_id();
    format(string, sizeof string, "SELECT * FROM `users` WHERE `id`='%d'", Player[playerid][p_id]);
    mysql_tquery(connect, string, "LoadPlayerData""d", playerid);
     SCM(playerid, 0x00FF00FF"Вы успешно прошли регистрацию!");
    return 1;
}

// - Авторизация

DialogCreate:PlayerLoginText(playerid)
{
    new string[500];
    format(string, sizeof string,
    "{FFFFFF}\tДобро пожаловать на {ffa500}Visonfa Role-Play!{FFFFFF}\n\
    Данный аккаунт зарегестрирован на нашем сервере\n\
    Для авторизации введите пароль в поле ниже\n\
    \tВаш никнейм: {008000}%s{ffffff}\n\n",
    Player[playerid][p_name]);
    Dialog_Open(playerid, "PlayerLogin", DSP, "{FFFFFF}Авторизация | {ffa500}Visonfa Role-Play", string, "Ввод""Выход");
    return 1;
}

DialogResponse:PlayerLogin(playerid, response, listitem, inputtext[])
{
    if(!response)
    {
        SCM(playerid, -1"Вы прервали регистрацию!");
        return KickEx(playerid);
    }
    new string[300];
    mysql_format(connect, string, sizeof string, "SELECT 1 FROM `users` WHERE `name`='%s' AND `password`='%s'", Player[playerid][p_name], temp_PlayerPassword[playerid]);
    new Cache:cache = mysql_query(connect, string);
    if(cache_get_row_count(connect) <= 0)
    {
        new count = GetPVarInt(playerid, "PasswordCount");
        count++;
        if(count >= 3)
        {
            SCM(playerid, -1"Вы ввели неверно пароль 3 раза");
            return KickEx(playerid);
        }
        format(string, sizeof string, "Вы ввели неверно пароль! Попыток: %d/3"3 - count);
        SCM(playerid, -1, string);
        SetPVarInt(playerid, "PasswordCount", count);
        Dialog_Show(playerid, "PlayerLogintText");
        return cache_delete(cache);
    }
    cache_delete(cache);
    format(string, sizeof string, "SELECT * FROM `users` WHERE `name`='%s'", Player[playerid][p_name]);
    mysql_tquery(connect, string, "LoadPlayerData""d", playerid);
    return 1;
}

 

 

Отредактировано пользователем Cawfee

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


Ссылка на сообщение

1 ответ на этот вопрос

  • 0

Привет, не потерял ли ты надежду)
 

Спойлер

DialogResponse:PlayerLogin(playerid, response, listitem, inputtext[])
{
    if(!response)
    {
        SCM(playerid, -1"Вы прервали регистрацию!");
        return KickEx(playerid);
    }
    format(temp_PlayerPassword[playerid], 32, inputtext);

    new string[300];
    mysql_format(connect, string, sizeof string, "SELECT 1 FROM `users` WHERE `name`='%s' AND `password`='%s'", Player[playerid][p_name], temp_PlayerPassword[playerid]);
    new Cache:cache = mysql_query(connect, string);
    if(cache_get_row_count(connect) <= 0)
    {
        new count = GetPVarInt(playerid, "PasswordCount");
        count++;
        if(count >= 3)
        {
            SCM(playerid, -1"Вы ввели неверно пароль 3 раза");
            return KickEx(playerid);
        }
        format(string, sizeof string, "Вы ввели неверно пароль! Попыток: %d/3"3 - count);
        SCM(playerid, -1, string);
        SetPVarInt(playerid, "PasswordCount", count);
        Dialog_Show(playerid, "PlayerLoginText"); 
        return cache_delete(cache);
    }
    cache_delete(cache);
    format(string, sizeof string, "SELECT * FROM `users` WHERE `name`='%s'", Player[playerid][p_name]);
    mysql_tquery(connect, string, "LoadPlayerData""d", playerid);
    return 1;
}

 

 

'PlayerLogintText' на 'PlayerLoginText' поменяй в dialog_show, опечатка

Отредактировано пользователем Cawfee

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


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

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

  • Похожий контент