20.06.2014, 17:58
Здравствуйте, у меня возникло 2-ве проблемы с регистрацией и авторизацией в системе БД mySQL. Прошу помощи!)
1) - При регистрации на сервере в базу не записывается Никнейм персонажа
2) - Авторизация, находит аккаунт, но если вводить пароль, верный, система его отвергает
1) - При регистрации на сервере в базу не записывается Никнейм персонажа
Код:
if(dialogid == DIALOG_REGISTER) //Регистрация
{
if(response)
{
if(strlen(inputtext) == 0)
{
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "{ffd800}Регистрация", "{ffffff}Введите пароль", "Далее", "");
}
else
{
new query[255], temp[100];
new PlayerName[MAX_PLAYER_NAME];
mysql_real_escape_string (inputtext, temp);
format ( query, sizeof query, "INSERT INTO `users` (`login`, `password` ) VALUES ( '%s', '%s')", PlayerName[playerid], temp);
mysql_function_query ( dbHandle, query, false, "", "" ) ;
ShowPlayerDialog(playerid, DIALOG_LOGIN,DIALOG_STYLE_INPUT, "{ffd800}Авторизация", "введите пароль", "Далее", "");
}
}
else{}
}
Код:
if(dialogid == DIALOG_LOGIN) //Авторизация
{
if(response)
{
if(strlen(inputtext) == 0)
{
ShowPlayerDialog(playerid, DIALOG_LOGIN,DIALOG_STYLE_INPUT, "{ffd800}Авторизация", "{ffffff}Окошко пустое, введите пароль", "Далее", "");
}
else
{
new query[255], temp[128];
new PlayerName[MAX_PLAYER_NAME];
format(query, sizeof query, "SELECT * FROM `users` WHERE `login` = '%s' AND `password` = '%s' LIMIT 1",
PlayerName[playerid], temp) ;
mysql_real_escape_string(inputtext, temp);
mysql_function_query(dbHandle, query, true, "PlayerLogin", "i", playerid);
}
}
else{}
}
Код:
forward PlayerLogin (playerid);
public PlayerLogin (playerid)
{
new rows, fields, temp[255];
cache_get_data(rows,fields);
if(rows)
{
ShowPlayerDialog(playerid, DIALOG_TEAM, DIALOG_STYLE_LIST, "{ffd800}Выбор команды", "Синие\nКрасные", "Далее", "");
}
else
{
SendClientMessage(playerid, 0xff9900AA, "Неверный пароль");
ShowPlayerDialog(playerid, DIALOG_LOGIN,DIALOG_STYLE_INPUT, "{ffd800}Авторизация", "Введите пароль", "Далее", "");
}
return 1;
}


