DeanMrz
Умник
Делаю авторизацию для сервера, но выдаёт вечно "неверный пароль". Паролю почему-то присваивается значение моего ника(криво) допустом Test_Test (ett_Test)
PHP:
case DLG_LOG:
{
if( response)
{
for(new i = strlen( inputtext); i != 0; -- i)
switch(inputtext[ i])
{
case 'А'..'Я', 'а'..'я', '=', ' ': return ShowPlayerDialog(playerid,DLG_LOG,DIALOG_STYLE_MSGBOX,"{0be959}Ошибка при вводе пароля","{FFFFFF}\n\nПароль может состоять только из латинских букв и цифр.\n\n","Повтор","");
}
if(!strlen(inputtext)) return LoginNext(playerid);
if(strlen(inputtext) < 6 ||strlen(inputtext) > 20) return LoginNext(playerid);
new _local_mysql_query[128]; //_local_password[40];
format(_local_mysql_query, sizeof(_local_mysql_query), "SELECT `pPass` FROM `users` WHERE `pName` = '%s'", PlayerInfo[playerid][pName]);
new Cache: result = mysql_query(sql_connection, _local_mysql_query);
if(cache_num_rows(sql_connection) > 0)
{
cache_get_field_content(0, "pPass", LoginPassword[playerid], sql_connection, 40);
PlayerInfo[playerid][pPass] = LoginPassword[playerid];
}
cache_delete(result);
if(!strcmp(PlayerInfo[playerid] [pPass], inputtext, false))
{
format(string, sizeof(string), "select * from `users` where `pName` = '%s'", PlayerInfo[playerid][pName]);
mysql_tquery(sql_connection, string, "LoadAcc", "i", playerid);
printf("yes");
TogglePlayerSpectating(playerid, false);
LoginNext(playerid);
}
else
{
SendClientMessage(playerid, -1, "Вы ввели неверный пароль");
printf("no");
format(string, sizeof(string), "Pass: %s, | loginPl %s | input: %s", PlayerInfo[playerid][pPass], LoginPassword[playerid], inputtext);
SendClientMessage(playerid, -1, string);
LoginNext(playerid);
}
return true;
}
else
{
SendClientMessage(playerid, -1, "Используйте: {0be959}(/q)uit{ffffff} чтобы покинуть сервер"); ShowPlayerDialog(playerid, -1, 0, " ", " ", "", ""); return Kick(playerid);
}
}
