Fazer login logo apуs registro (sem deslogar e logar) -
SirUndead - 31.07.2016
Saudaзхes,
Este й um ъltimo problema localizado no sistema de registro e login que fiz Y_ini.
Apуs vocк logar pela primeira vez e registar uma senha. Ele jб permitia que vocк logasse, ai adicionei na
public OnDialogResponse > DIALOG_REGISTER a seguinte linha para que apуs criar a senha, ele pedisse para logar:
Code:
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,VERDE_PADRAO_HEXA"[SUCESSO] {FFFFFF}ACESSO DE REGISTRO", "Nick registrado com sucesso.\nInsira a senha registrada para prosseguir.","Acessar","Sair");
Deixando meu public OnDialogResponse dessa forma:
Code:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
case DIALOG_REGISTER:
{
if(!response) return Kick(playerid);
if(response)
{
if(!strlen(inputtext)) return ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Register:","Password invalid, type password!","Register","Quit");
new INI:File = INI_Open(UserPath(playerid));
INI_SetTag(File,"data");
INI_WriteInt(File,"Password",udb_hash(inputtext));
INI_WriteInt(File,"Cash",0);
INI_WriteInt(File,"Admin",0);
INI_WriteInt(File,"Score",0);
INI_WriteInt(File,"Bankmoney",0);
INI_WriteInt(File,"Banned",0);
INI_Close(File);
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,VERDE_PADRAO_HEXA"[SUCESSO] {FFFFFF}ACESSO DE REGISTRO", "Nick registrado com sucesso.\nInsira a senha registrada para prosseguir.","Acessar","Sair");
}
}
case DIALOG_LOGIN:
{
if(!response) return Kick(playerid);
if(response)
{
if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])
{
INI_ParseFile(UserPath(playerid),"LoadUser_%s",.bExtra = true,.extra = playerid);
GivePlayerMoney(playerid,PlayerInfo[playerid][pCash]);
SetPlayerScore(playerid,PlayerInfo[playerid][pScore]);
SendClientMessage(playerid,-1,"You've succsessfully logged in your account!");
}
else
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login:","Password INCORRET, type again!","Login","Quit");
}
}
}
}
return 1;
}
O problema: Ai entгo apуs o registro, abre um DIALOG para login, mas da como senha invбlida mesmo digitando a senha perfeitamente correta... Sу relogando para que dк para logar.
Seria algum return faltando?
Se precisarem do resto do cуdigo й sу dizer.
Espero que possam me ajudar, obrigado pela atenзгo.
Re: Fazer login logo apуs registro (sem deslogar e logar) - Whoo - 31.07.2016
Vocк tem que pegar a senha e armazenar na variбvel PlayerInfo[playerid][pPass] antes de comparar
Re: Fazer login logo apуs registro (sem deslogar e logar) -
JonathanFeitosa - 31.07.2016
Nunca usei esse sistema de hash, mas tenta utilizar o strcmp para comparaзгo e botar a senha como tipo String.
Re: Fazer login logo apуs registro (sem deslogar e logar) -
SirUndead - 31.07.2016
Mas isso nгo й feito aqui?