SA-MP Forums Archive
[Ajuda] Crash com funзao mysql - 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] Crash com funзao mysql (/showthread.php?tid=310637)



[Ajuda] Crash com funзao mysql - BlackCoder - 13.01.2012

Olб vim pedir ajuda aki pois isso ja ta me 'fudendo' a dias segue o codigo:
pawn Код:
new query[200], pname[24],savingstring[100];
    GetPlayerName(playerid, pname, 24);
    format(query, sizeof(query), "SELECT * FROM Jogadores WHERE Nome = '%s'", pname);
    mysql_query(query);
    mysql_store_result();
    while(mysql_fetch_row_format(query,"|"))//problema com esta funcao
    {
        mysql_fetch_field_row(savingstring, "RG");PlayerInfo[playerid][RG] = strval(savingstring);
    }
ai esta parte do meu login, o problema estб no 'mysql_fetch_row_format(query,"|")' toda vez que esta funcao acontece derruba eu server. se alguem tem a solucao ficarei muito grato.att


Re: [Ajuda] Crash com funзao mysql - AppleX - 13.01.2012

Vocк nгo precisa usar o loop.

pawn Код:
new query[200], pname[24],savingstring[100];
GetPlayerName(playerid, pname, 24);
format(query, sizeof(query), "SELECT * FROM Jogadores WHERE Nome = '%s'", pname);
mysql_query(query);
mysql_store_result();

mysql_fetch_row_format(query,"|");
mysql_fetch_field_row(savingstring, "RG");

PlayerInfo[playerid][RG] = strval(savingstring);



Respuesta: Re: [Ajuda] Crash com funзao mysql - BlackCoder - 13.01.2012

Quote:
Originally Posted by AppleX
Посмотреть сообщение
Vocк nгo precisa usar o loop.

pawn Код:
new query[200], pname[24],savingstring[100];
GetPlayerName(playerid, pname, 24);
format(query, sizeof(query), "SELECT * FROM Jogadores WHERE Nome = '%s'", pname);
mysql_query(query);
mysql_store_result();

mysql_fetch_row_format(query,"|"))
mysql_fetch_field_row(savingstring, "RG");

PlayerInfo[playerid][RG] = strval(savingstring);
vou tentar sem o loop, mas dai vou ter que usar o mysql_fetch_row_format(query,"|") a cada field?


Re: [Ajuda] Crash com funзao mysql - Ricop522 - 13.01.2012

Se for mais que um vocк usa o while


Re: [Ajuda] Crash com funзao mysql - steki. - 13.01.2012

Fique ciente que usar MySQL deste jeito ira te causar lags absurdos na thread do pawn.


Re: [Ajuda] Crash com funзao mysql - BlackCoder - 13.01.2012

Quote:
Originally Posted by Stewie`
Посмотреть сообщение
Fique ciente que usar MySQL deste jeito ira te causar lags absurdos na thread do pawn.
cara todo meu gm estб em mysql, com mais de 1500 linhas e nunca tive problemas, sу й estranho que bugou este cуdigo sendo que carros,casas,orgsetc estб tudo com o mesmo codigo


Re: [Ajuda] Crash com funзao mysql - AppleX - 13.01.2012

O plugin do BlueG (aka G-sTyLeZzZ) tem Threaded Query, ou seja, vocк pode fazer uma consulta sql e o servidor nгo vai travar nesse meio tempo, os dois vгo rodar ao mesmo tempo.


Re: [Ajuda] Crash com funзao mysql - BlackCoder - 13.01.2012

sera que alguem poderia me explicar o que estas funcoes fazem detalhadamente
mysql_fetch_row_format
mysql_fetch_field_row
obg


Re: [Ajuda] Crash com funзao mysql - AppleX - 13.01.2012

mysql_fetch_row_format pega toda a row (linha), por exemplo aa = 'abc', bb = 'cba', cc = 'bca', faz de conta que й uma linha aa, bb, cc sгo as fields e o que tб dentro delas sгo os resultados, se vocк usar a funзгo mysql_fetch_row_format, dentro da string vai ter "abc|cba|bca".
OBS: O '|' й o que separa, vocк pode mudar no segundo argumento da funзгo. (Vocк pode usar a funзгo split ou o sscanf para pegar os resultados separados)

mysql_fetch_field_row vai pegar somente um resultado da field que vocк querer, por exemplo mysql_fetch_field_row(string, "aa"), na string vai ter abc, como expliquei acima.


Re: [Ajuda] Crash com funзao mysql - BlackCoder - 13.01.2012

Quote:
Originally Posted by AppleX
Посмотреть сообщение
mysql_fetch_row_format pega toda a row (linha), por exemplo aa = 'abc', bb = 'cba', cc = 'bca', faz de conta que й uma linha aa, bb, cc sгo as fields e o que tб dentro delas sгo os resultados, se vocк usar a funзгo mysql_fetch_row_format, dentro da string vai ter "abc|cba|bca".
OBS: O '|' й o que separa, vocк pode mudar no segundo argumento da funзгo. (Vocк pode usar a funзгo split ou o sscanf para pegar os resultados separados)

mysql_fetch_field_row vai pegar somente um resultado da field que vocк querer, por exemplo mysql_fetch_field_row(string, "aa"), na string vai ter abc, como expliquei acima.
muito obrigado AppleX agora tenho certeza do que fazem, entгo no caso eu poderia fazer o sistema assim na ordem de registro do bd
pawn Код:
mysql_fetch_row_format(query,"|");
mysql_fetch_field_row(string,"Hey");string=string;
mysql_fetch_row_format(query,"|");
mysql_fetch_field_row(string,"HeyHou");string=string;
Ex do banco de dados
Код:
Nome:
Hey
HeyHou