Alex_Jemison
Умник
Пробую писать мод с 0 для понимать некоторые моменты более подробно. Написал смену пароля через настройку персонажа но почему-то не меняется пароль ошибок нет в MySQl также .
PHP:
case 9:
{
if(response)
{
switch(listitem)
{
case 0: ShowPlayerDialog(playerid, 10, DIALOG_STYLE_INPUT, "Смена пароля | Старый пароль", "{FFFFFF}Введите Ваш текущий пароль от аккаунта:", "Далее", "Закрыть");
}
}
else callcmd::menu(playerid);
}
case 10:
{
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 10, DIALOG_STYLE_INPUT, "Смена пароля | Старый пароль", "{FFFFFF}Введите Ваш текущий пароль от аккаунта:", "Далее", "Закрыть");
if(!strcmp(PlayerInfo[playerid][pPassword], inputtext))
{
ShowPlayerDialog(playerid, 11, DIALOG_STYLE_INPUT, "Смена пароля | Новый пароль", "{FFFFFF}Введите пароль на который хотите изменить:", "Применить", "Закрыть");
}
else
{
SendClientMessage(playerid, COLOR_RED, ">> {FFFFFF}Вы ввели неправильный пароль !");
ShowPlayerDialog(playerid, 10, DIALOG_STYLE_INPUT, "Смена пароля | Старый пароль", "{FFFFFF}Введите Ваш текущий пароль от аккаунта:", "Далее", "Закрыть");
}
}
case 11:
{
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 11, DIALOG_STYLE_INPUT, "Смена пароля | Новый пароль", "{FFFFFF}Введите пароль на который хотите изменить:", "Применить", "Закрыть");
if(!(6 <= strlen(inputtext) <= 30))
{
ShowPlayerDialog(playerid, 11, DIALOG_STYLE_INPUT, "Смена пароля | Новый пароль", "{FFFFFF}Введите пароль на который хотите изменить:", "Применить", "Закрыть");
return SendClientMessage(playerid, COLOR_GOLD, ">> {FFFFFF} Длина пароля от 6 до 30 символов ");
}
new regex:passwordcheck = regex_new("^[a-zA-Z0-9]{1,}$");
if(regex_check(inputtext,passwordcheck))
{
new string[65+(-2+32)];
format(string, sizeof(string), ">> {FFFFFF}Пароль успешно изменен ! Ваш новый пароль: {FFD700}%s", inputtext);
SendClientMessage(playerid, COLOR_GOLD, ">> {FFFFFF}Рекомендуем сделать скриншот на F8 или куда-то записать ваш пароль");
SendClientMessage(playerid, COLOR_GOLD, string);
static const fmt_query[] = "UPDATE `accounts` SET `Password` = '%s' WHERE `id` = '%d'";
new query[sizeof(fmt_query)+(-2+64)+(-2+8)];
format(query, sizeof(query), fmt_query, PlayerInfo[playerid][pPassword],PlayerInfo[playerid][pID]);
mysql_tquery(mysql, query);
}
else
{
ShowPlayerDialog(playerid, 11, DIALOG_STYLE_INPUT, "Смена пароля | Новый пароль", "{FFFFFF}Введите пароль на который хотите изменить:", "Применить", "Закрыть");
return SendClientMessage(playerid, COLOR_GOLD, "{FFFF00}Примечания: • Длина пароля от 6 до 30 символов • Пароль должен состоять из букв и цифр • Пароль чуствителен к регистру");
}
regex_delete(passwordcheck);
}
}
