[Ajuda] Entender um cуdigo... (MySQL R7 do BlueG)
#1

Estou aprendendo a mexer com MySQL, estava seguindo um tutorial de um sistema de registro simples, que no momento, salva apenas Senha...

Usando includes normais, ou atй mesmo sem usa-las, usamos 'strcmp' para comparar a inputtext (no caso da dialog) com a senha arquivada, mais no sistema que eu segui, nгo foi usado isso, olhe:

pawn Код:
if(dialogid == DialogLogin)
    {
        if(!response)
        {
            SendClientMessage(playerid, vermelhoZ, "(ERRO) Vocк precisa estar logado para jogar aqui.");
            Kick(playerid);
        }
        else
        {
            mysql_format(conexaoZ, consulta, "SELECT * FROM `jogadores` WHERE `nome` = '%e' AND `senha` = '%e'", nome, inputtext);
            //1є %e estб pegando o Nome que o jogador logou, o 2є %e estб pegando a inputtext
            mysql_function_query(conexaoZ, consulta, true, "FazerLogin", "i", playerid);
            //Aqui ele manda para a public 'FazerLogin' com as informaзхes...
        }
        return 1;
    }
Agora, eu nгo sei como ele manda a informaзгo para isso dizendo que estб correto ou nгo a senha...
pawn Код:
public FazerLogin(playerid)
{
    new linhas, campos;
    cache_get_data(linhas, campos, conexaoZ);
    switch(linhas)
    {
        case 0:
        {
            SendClientMessage(playerid, vermelhoZ, "(ERRO) Senha incorreta!");
            ShowPlayerDialog(playerid, DialogLogin, DIALOG_STYLE_PASSWORD, "{FFFF00}Login", "Insira sua senha para logar", "Login", "Sair");
        }
        default:
        {
            pInfo[playerid][Logado] = 1;
            SendClientMessage(playerid, amareloZ, "(INFO) Logado com sucesso!");
        }

O cуdigo estб funcionando normalmente, estб salvando tranquilo, sу nгo entendi como funciona o
Код:
mysql_function_query(conexaoZ, consulta, true, "FazerLogin", "i", playerid);
Reply
#2

A funзгo mysql_function_query tenta acessar o banco de dados do jogador usando a "linha de comando"(feita pela funзгo mysql_format) com a a senha digitada(inputtext), se conseguir acessar, a funзгo que lк o cache(cache_get_data) vai colocar a quantidade de linhas presente no banco de dados do jogador na variбvel "linhas". Sendo assim se a variбvel linhas tiver a quantidade igual a 0 o cache nгo foi carregado(nada foi lido, senha incorreta).
Reply
#3

Agora entendi xD

obg
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)