MYSQL - Retornando menos linhas - Joao Pedro - 06.10.2012
Entгo galerinha da pesada, estou desenvolvendo meu /orgs pegando os dados direto da tabela SQL, porйm estб acontecendo 2 problemas comigo:
- Quando existe mais de 20 resultados, o DIALOG_MSGBOX nгo aparece.
- Como resultado, estou recebendo 21 linhas quando na tabela sql existem 28.
Comando:
Код:
CMD:orgs( playerid, params[] ) {
// --- Seleзгo dos dados no SQL ---
format( query, sizeof(query), "SELECT id, lider FROM orgs" );
mysql_function_query( mysqlConnection, query, true, "r@listaOrgs", "d", playerid );
return 1;
}
Callback SQL:
Код:
/*
* r@listaOrgs()
*
* Resposta SQL -> comando /orgs
*/
forward r@listaOrgs(playerid);
public r@listaOrgs(playerid) {
new resultID[64], resultLider[64], lista[2500], fields, rows;
cache_get_data( rows, fields, mysqlConnection );
for( new a = 0; a < rows; a++ ) {
cache_get_field_content( a, "id", resultID, mysqlConnection );
cache_get_field_content( a, "lider", resultLider, mysqlConnection );
format( newString, sizeof(newString), "{%s}%s{ffffff} - ID: [{ff0000}%d{ffffff}] - Lнder: {3399cc}%s\n", orgsColorHex[strval(resultID)], nomeOrgs[strval(resultID)], strval(resultID), resultLider);
SendClientMessageToAll( C_ERROR, newString );
strcat( lista, newString );
}
ShowPlayerDialog(playerid,LISTA_ORGS,DIALOG_STYLE_MSGBOX ,"Organizaзхes:",lista,"FECHAR","FECHAR");
return 1;
}
Alguйm poderia me dar uma mгo? Desde jб agradeзo.
@edit
A linha
Код:
SendClientMessageToAll( C_ERROR, newString );
Й um debug que botei para ver os resultados, jб que o MSGBOX nгo aparece...
Re: MYSQL - Retornando menos linhas -
StanleyScripter - 06.10.2012
MySql й difнcil resolver assim, pois tem que analizar a tabela tbm para saber se ela estб correta, No seu Debug estб correto as linhas que retornam ?
Re: MYSQL - Retornando menos linhas - Joao Pedro - 06.10.2012
Retornam 21 resultados, mas a tabela existem 28
Re: MYSQL - Retornando menos linhas -
StanleyScripter - 06.10.2012
Humm, Ai fica complicado pois aparentemente estб correto seu Codigo, aconselho vc a fazer um Debug bem detalhado quem sabe assim vc encontre o erro..
Re: MYSQL - Retornando menos linhas - Joao Pedro - 06.10.2012
Resolvido. Foi um erro idiota da minha parte. A array orgsColorHex aonde armazena o hex das cores das organizaзхes estava indo atй o нndice 21, eu esqueci de por atй o 28. Erro idiota.
Obrigado Stanley pela intenзгo, reputado.
Re: MYSQL - Retornando menos linhas -
StanleyScripter - 06.10.2012
Humm, agora caiu a ficha, chegava no 22 ele tentava acessar um array de 21 dai crashava essa parte e nгo executava esta CallBack completamente.. De nada, estamos ai para isso!!