SA-MP Forums Archive
[Ajuda] O que tem de errado - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] O que tem de errado (/showthread.php?tid=526913)



O que tem de errado - kixtz - 20.07.2014

Queria saber o que tem de errado no cуdigo:

pawn Код:
enum pInfo
{
    Id,
    Name[MAX_PLAYER_NAME],
    Money,
    Level,
    AdminLevel,

    bool:IsLoggedIn,
    bool:IsRegistered,
    LoginAttempts
};
new Player[MAX_PLAYERS][pInfo];
pawn Код:
public OnPlayerConnect(playerid)
{  
    new msgConnect[MAX_PLAYER_NAME];
    format(msgConnect,20 + (sizeof(msgConnect)),"O jogador %s entrou no servidor.",getPlayerName(playerid));
    //SendClientMessageToAll(COR_ROXO_CLARO, msgConnect);
   
    format(Player[playerid][Name],MAX_PLAYER_NAME,"%s",getPlayerName(playerid));
    printf("%s",Player[playerid][Name]); // <<< Essa parte nгo imprimi no console
    printf("%s",msgConnect); // <<< Essa imprimi com o nome do jogador
   
    if(!existsUser(playerid)){
        ShowPlayerDialog(playerid, DIALOG_PLAYER_LOGIN, DIALOG_STYLE_PASSWORD, "Efetue seu login", "Informe sua senha:", "Logar", "Sair");
    }
    else{
        ShowPlayerDialog(playerid, DIALOG_PLAYER_REGISTER, DIALOG_STYLE_PASSWORD, "Registre-se", "Informe sua senha:", "Cadastrar", "Sair");
    }
    return 1;
}
pawn Код:
stock getPlayerName(playerid)
{
    new pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pName,sizeof(pName));
    return pName;
}
Aqui nгo vem o nome do jogador sendo que na mensagem do OnPlayerConnect aparece
pawn Код:
stock existsUser(playerid)
{
    new query[126];
    format(query, sizeof(query), "select 1 from user where user nome = '%s'", getPlayerName(playerid));
    printf("%s",query);
           // Imprimi sem o nome == select 1 from user where user nome = ''
    mysql_query(query);
    mysql_store_result(cnx);
   
    if(mysql_num_rows() == 1){
        return true;
    }
    mysql_free_result();
    return false;
}



Re: O que tem de errado - DogeMan - 20.07.2014

Leia o arquivo mysql_log para mais informaзхes de erros relacionados ao mysql.


Re: O que tem de errado - kixtz - 20.07.2014

mais nгo й erro de mysql cara o nome do cara nгo chega no existsUser


Re: O que tem de errado - darkxdll - 20.07.2014

Tente fazer sem usar essa sua funзгo...
PHP код:
new playerName[24];
GetPlayerName(playerid,playerName,24); 



Re: O que tem de errado - WLSF - 20.07.2014

Cara, com todo respeito, teu cуdigo tб escroto.

Eu recomendaria vocк fazer de novo, analisando parte a parte, ou entгo procurar algum tutorial para criar sistemas de login, isso й oque nгo falta aqui no fуrum.

Porque no fim das contas se eu for citar as partes que estгo erradas, vocк teria que refazer do mesmo jeito.


Re: O que tem de errado - kixtz - 20.07.2014

por algum motivo se eu comentar essa parta funciona
pawn Код:
format(msgConnect,20 + (sizeof(msgConnect)),"O jogador %s entrou no servidor.",getPlayerName(playerid));