Добрый день делаю сервер и столкнулся с проблемой с вводом пароля вводишь любой пароль от любово аккаунта и ты ввошел даже если пароль не правильный все ровно войдешь. Помогите пжл
Код:
public OnPlayerConnect(playerid)
PHP код:
format(mysql_logs, sizeof(mysql_logs), "SELECT `pName` FROM `akk` WHERE `pName` = '%s'", PlayerInfo[playerid][pName]);
mysql_function_query(MYSQL, mysql_logs, true, "OnPlayerRegistr", "i", playerid);
PHP код:
public OnPlayerRegistr(playerid, inputtext[])
{
new r, d;
new reg[190+MAX_PLAYER_NAME-2];
cache_get_data(r, d);
TogglePlayerControllable(playerid, false);
SendClientMessage(playerid, COLOR_YELLOW, "Добро пожаловать на Role Play сервер");
if(r)
{
format(reg, sizeof(reg), "{C5C5C5}_____________________________________\n\nДобро пожаловать на RolePlay сервер\n\nВаш аккаунт зарегистрирован\n\nЛогин: {00FF08}%s{C5C5C5}\nВведите пароль:\n\n_____________________________________", PlayerInfo[playerid][pName]);
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, "Авторизация", reg, "Готово", "Отмена");
}
else
{
format(reg, sizeof(reg), "{C5C5C5}_____________________________________\n\nДобро пожаловать на RolePlay сервер\n\nРегистрация нового персонажа\n\nЛогин: {FF0000}%s{C5C5C5}\nВведите пароль:\n\n_____________________________________", PlayerInfo[playerid][pName]);
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Регистрация", reg, "Далее", "Отмена");
}
return 1;
}
Dialogи
PHP код:
case 1://Авторизация
{
if(response)
{
if(!strlen(inputtext))
{
new reg[190+MAX_PLAYER_NAME-2];
format(reg, sizeof(reg), "{C5C5C5}_____________________________________\n\nДобро пожаловать на RolePlay сервер\n\nВаш аккаунт зарегистрирован\n\nЛогин: {00FF08}%s{C5C5C5}\nВведите пароль:\n\n_____________________________________", PlayerInfo[playerid][pName]);
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, "Авторизация", reg, "Готово", "Отмена");
return 1;
}
if(strlen(inputtext) < 6 || strlen(inputtext) > 16) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "Ошибка", "Введеный вами пароль слишком коротк\nПароль должен состоять от 6 до 16 символов.\nА так же должен состоять из букв и цифр", "Повторить", "");
for(new i = strlen(inputtext)-1; i != -1; i--)
{
switch(inputtext[i])
{
case '0'..'9', 'а'..'я', 'a'..'z', 'А'..'Я', 'A'..'Z': continue;
default: return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "Ошибка", "Введеный вами пароль содержит русские буквы или не допустимые символы.\nПереключите расскладку на клавиатуре и введите еще раз пароль.", "Повтор", "");
}
}
if(!strcmp(PlayerInfo[playerid][pPassword], inputtext))
{
format(mysql_logs, sizeof(mysql_logs), "SELECT * FROM `akk` WHERE `pName` = '%s'", PlayerInfo[playerid][pName]);
mysql_function_query(MYSQL, mysql_logs, false, "OnPlayerLogin", "i", playerid);
}
else
{
switch(GetPVarInt(playerid, "ERRORPASS"))
{
case 0: ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "Ошибка", "Вы ввели не правильный пароль.\nОсталось попыток 3", "Повтор", "Отмена");
case 1: ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "Ошибка", "Вы ввели не правильный пароль.\nОсталось попыток 2", "Повтор", "Отмена");
case 2: ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "Ошибка", "Вы ввели не правильный пароль.\nОсталось попыток 1", "Повтор", "Отмена");
case 3:
{
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "Ошибка", "Вы ввели не правильный пароль.\nВы были кикнуты с сервера", "Закрыть", "");
return 1;
}
}
SetPVarInt(playerid, "ERRORPASS", GetPVarInt(playerid, "ERRORPASS") +1);
}
return 1;
}
else
{
SendClientMessage(playerid, COLOR_LIGHTRED, "Для выхода из игры используйте /q(uit)");
SetTimerEx("Kicks", 1000, false, "d", playerid);
return 1;
}
}
PHP код:
forward OnPlayerLogin(playerid);
public OnPlayerLogin(playerid)
{
cache_get_field_content(0, "pPassword", maximum), strmid(PlayerInfo[playerid][pPassword], maximum, 0, strlen(maximum), 20);
cache_get_field_content(0, "pLevel", maximum), PlayerInfo[playerid][pLevel] = strval(maximum);
cache_get_field_content(0, "pJob", maximum), PlayerInfo[playerid][pJob] = strval(maximum);
cache_get_field_content(0, "pSkin", maximum), PlayerInfo[playerid][pSkin] = strval(maximum);
SpawnPlayer(playerid);
return 1;
}
Помогите пжл