ivanfedoseev59
Нуль
- Регистрация
- 22 Дек 2019
- Сообщения
- 4
- Лучшие ответы
- 0
- Репутация
- 0
Я ввожу пароль и мне выходит окошко G-Auth, даже тогда, когда у меня нет кода самого, хотя проверка стоит. Помогите. Где я аут? Компилятор не орет
HTML:
case DLG_LOGIN:
{
if(response)
{
new len = strlen(inputtext);
if(!len)
{
SendClientMessage(playerid, 0xFF0000FF, "Вы ничего не ввели.");
ShowLogin(playerid);
return 1;
}
if(!strcmp(inputtext, player_info[playerid][Password], false))
{
if(strlen(player_info[playerid][GAuth]) > 2)
{
if(player_info[playerid][GAuthSet] == 0)
{
new nowip[16], oldip[16];
GetPlayerIp(playerid, nowip, sizeof(nowip));
GetPlayerSubnet(playerid, nowip, sizeof(nowip));
strmid(oldip, player_info[playerid][LastIp], 0, 16, 16);
GetPlayerSubnet(playerid, oldip, sizeof(oldip));
if(strcmp(nowip, oldip, true) == 0)
{
static const fmt_query[] = "SELECT * FROM `accounts` WHERE `name` = '%e' AND `password` = '%e'";
new query[sizeof(fmt_query)+(-2+MAX_PLAYER_NAME)+(-2+32)];
mysql_format(dbHandle, query, sizeof(query), fmt_query, player_info[playerid][Name], player_info[playerid][Password]);
mysql_tquery(dbHandle, query, "PlayerLogin", "i", playerid);
}
else
{
ShowPlayerDialog(playerid, DLG_LOGINGAUTH, DIALOG_STYLE_INPUT, !"{e49a05}Авторизация {FFFFFF}• Google Authenticator", !"{FFFFFF}Введите код из приложения Google Authenticator (или расширения) в поле ниже\nСоветуем перепроверить синхронизацию со временем, абы могу быть неполадки при входе", !"Далее", "Отмена");
}
}
else if(player_info[playerid][GAuthSet] == 1)
{
ShowPlayerDialog(playerid, DLG_LOGINGAUTH, DIALOG_STYLE_INPUT, !"{e49a05}Авторизация {FFFFFF}• Google Authenticator", !"{FFFFFF}Введите код из приложения Google Authenticator (или расширения) в поле ниже\nСоветуем перепроверить синхронизацию со временем, абы могу быть неполадки при входе", !"Далее", "Отмена");
}
}
else
{
static const fmt_query[] = "SELECT * FROM `accounts` WHERE `name` = '%s' AND `password` = '%s'";
new query[sizeof(fmt_query)+(-2+MAX_PLAYER_NAME)+(-2+32)];
format(query, sizeof(query), fmt_query, player_info[playerid][Name], player_info[playerid][Password]);
mysql_tquery(dbHandle, query, "PlayerLogin", "i", playerid);
}
}
else
{
SendClientMessage(playerid, 0xFF0000FF, "Вы ввели не верный пароль.");
ShowLogin(playerid);
return 1;
}
}
else
{
SendClientMessage(playerid, 0xFF0000FF, "Чтобы покинуть игру напишите /q (/quit)");
Kick(playerid);
}
}
HTML:
case DLG_LOGINGAUTH:
{
new getcode = GoogleAuthenticatorCode(player_info[playerid][GAuth], gettime());
if(strval(inputtext) == getcode)
{
static const fmt_query[] = "SELECT * FROM `accounts` WHERE `name` = '%s' AND `password` = '%s'";
new query[sizeof(fmt_query)+(-2+MAX_PLAYER_NAME)+(-2+32)];
mysql_format(dbHandle, query, sizeof(query), fmt_query, player_info[playerid][Name], player_info[playerid][Password]);
mysql_tquery(dbHandle, query, "PlayerLogin", "i", playerid);
}
else
{
SendClientMessage(playerid, COLOR_RED, "Код не совпадает с тем, который нужен. Проверьте синхронизацию со временем!");
Kick(playerid);
}
}