Portal SAMP
[Ajuda] Problemas com mysql - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Problemas com mysql (/showthread.php?tid=2657)



Problemas com mysql - razt - 13/08/2022

Entao galera, estou passando por um problema em meu servidor.
A partir de uns 20 jogadores, as contas começam a bugar, o sistema não consegue identificar se a conta é registrada ou não.

Vou explicar o processo do login:

Primeiramente, na callback: "OnPlayerRequestClass" eu chamo minha tela de carregamento, ao terminar o timer do carregamento, eu chamo a função:

Código:
mysql_format(mysql, string, sizeof string, "SELECT * FROM `contas` WHERE `Nome` = '%e' LIMIT 1", PlayerName(playerid));
mysql_tquery(mysql, string, "VerificarConta", "ds", playerid, PlayerName(playerid));


A callback chamada: 
Código:
CALLBACK::VerificarConta(playerid, namez[]) 
{         
    if(cache_num_rows())         
    {                 
        MostrarLogin(playerid);         
    }else{
        MostrarRegistro(playerid);
    }         
    return true;
}


Não consegui identificar o erro. Alias, no servidor local(127.0.0.1) esse problema se apresenta, apenas no oficial e a partir de um certo número de jogadores.

OBS: Não consegui colocar os códigos em [ code ], bugou aqui no meu post.


RE: Problemas com mysql - xbruno1000x - 13/08/2022

Ajeitei a formatação do código no tópico. Estava bugando por conta da letra estar em negrito.

O Nelson fez um tópico explicando tudo sobre sistemas de login/registro em MySQL. Acredito que será suficiente para solucionar seu problema, dá uma olhada lá:
https://portalsamp.com/showthread.php?tid=47


RE: Problemas com mysql - razt - 13/08/2022

(13/08/2022 22:00)xbruno1000x Escreveu: Ajeitei a formatação do código no tópico. Estava bugando por conta da letra estar em negrito.

O Nelson fez um tópico explicando tudo sobre sistemas de login/registro em MySQL. Acredito que será suficiente para solucionar seu problema, dá uma olhada lá:
https://portalsamp.com/showthread.php?tid=47
Obrigado pela resposta, Bruno. Então, o sistema já é inspirado no tópico do Nelson.  Sad


RE: Problemas com mysql - xbruno1000x - 13/08/2022

Dei uma olhada no código e me parece tudo em ordem(Suponho que as stocks utilizadas também estejam). A única diferença que vejo é o fato de você ter utilizado OnPlayerRequestClass ao invés de OnPlayerConnect. Não achei nada que diga que não pode fazer isso.

Confira se não há nenhum problema no banco de dados, como memória cheia ou algo assim.


RE: Problemas com mysql - domingues93 - 14/08/2022

Coloque um debug para ver se há erra da string da query.
Código PHP:
mysql_format(mysqlstringsizeof string"SELECT * FROM `contas` WHERE `Nome` = '%e' LIMIT 1;"PlayerName(playerid));
print(string); 
// debug para ver se há erro na query
mysql_tquery(mysqlstring"VerificarConta""ds"playeridPlayerName(playerid)); 



RE: Problemas com mysql - razt - 14/08/2022

(13/08/2022 23:17)xbruno1000x Escreveu: Dei uma olhada no código e me parece tudo em ordem(Suponho que as stocks utilizadas também estejam). A única diferença que vejo é o fato de você ter utilizado OnPlayerRequestClass ao invés de OnPlayerConnect. Não achei nada que diga que não pode fazer isso.

Confira se não há nenhum problema no banco de dados, como memória cheia ou algo assim.

Verifiquei tudo, nada de errado... Sempre que passa dos 20 jogadores começa a bugar, já estou ficando sem alternativas. :/

(14/08/2022 09:58)domingues93 Escreveu: Coloque um debug para ver se há erra da string da query.
Código PHP:
mysql_format(mysqlstringsizeof string"SELECT * FROM `contas` WHERE `Nome` = '%e' LIMIT 1;"PlayerName(playerid));
print(string); 
// debug para ver se há erro na query
mysql_tquery(mysqlstring"VerificarConta""ds"playeridPlayerName(playerid)); 

Vou tentar, amigo. Obrigado pela resposta.


RE: Problemas com mysql - yoda - 15/08/2022

olha o arquivo logs/errors.log lá fica registrado se tiver algum erro no mysql se possivel apresentar esses logs...