No sale toda la lista -
dannypanda05 - 07.03.2016
Tengo la funciуn de tops por SqLite pero al poner los 100 primeros de la lista solo me llegan hasta por los 85 como promedio y por mбs que le aumente los arrays no aparecen el resto, їlleguй el lнmite?
Un ejemplo:
PHP код:
new string[128], DBResult:qresult, rows;
format(string, sizeof(string), "SELECT `Nick`,`Ks`,`Sex`,`Onf` FROM `USERS` ORDER BY (`Ks` * 1) DESC limit 100");
qresult = db_query(ZLDB, string);
rows = db_num_rows(qresult);
if(rows)
{
new final_string[32 * sizeof(string)], MiInfoNick[MAX_PLAYER_NAME], MiInfoKill, MiOnOff, MiSexo;
strcat(final_string, "#\tNickname\tAsesinatos\tEstado\n");
for(new i = 0; i < rows; i ++)
{
db_get_field_assoc(qresult, "Nick", MiInfoNick, sizeof(MiInfoNick));
MiInfoKill = db_get_field_assoc_int(qresult, "Ks");
MiSexo = db_get_field_assoc_int(qresult, "Sex");
MiOnOff = db_get_field_assoc_int(qresult, "Onf");
new MsnTD[25];
if(MiOnOff == 1) MsnTD = JugadorInfo[i][zSexo] == 1 ? ( ""COL_VERDE"Conectada" ) : ( ""COL_VERDE"Conectado" ); else MsnTD = MiSexo == 1 ? ( ""COL_ROJO"Desconectada" ) : ( ""COL_ROJO"Desconectado" );
format(string, sizeof(string), ""COL_ROJO"%d°\t%s\t%d\t%s\n", (i + 1), MiInfoNick, MiInfoKill, MsnTD);
strcat(final_string, string);
db_next_row(qresult);
}
ShowPlayerDialog(playerid,DIALOG_IRTOPS, DIALOG_STYLE_TABLIST_HEADERS, "-§- Top score (asesinatos) -§-", final_string, "Aceptar", "Atrбs");
PlayerPlaySound(playerid, 1139, 0.0, 0.0, 0.0);
Ej: Le aumento string[128] a string[256] o a final_string[32 * sizeof(string)] a final_string[40 * sizeof(string)] pero aъn sale la lista incompleta, no aumenta ni uno mбs, їlleguй al mбximo o algo hago mal?
Re: No sale toda la lista -
SickAttack - 07.03.2016
Estas limitando los resultados a 50 (
limit 50 en el SQL statement), no se de donde sacas ese 85.
Respuesta: Re: No sale toda la lista -
dannypanda05 - 07.03.2016
Quote:
Originally Posted by SickAttack
Estas limitando los resultados a 50 (limit 50 en el SQL statement), no se de donde sacas ese 85.
|
>.> Obviamente le puse a 50 por ese problema, lo tenнa en 100, allн lo editй...
Respuesta: No sale toda la lista -
FelipeAndres - 07.03.2016
No te faltarб aumentarle mas?
Respuesta: No sale toda la lista -
dannypanda05 - 07.03.2016
Quote:
Originally Posted by FelipeAndres
No te faltarб aumentarle mas?
|
Allн explico que eh aumentado, aunque aumente 3 celdas mбs saldrнa 3 carбcteres mбs, pero sale igual con cualquier valor, por eso digo que me haya pasado el lнmite y desconozco del lнmite, por eso pido esa ayuda.
Re: No sale toda la lista -
SickAttack - 08.03.2016
new final_string[3000] o por hay.
Y estas seguro que tienes al menos 100 filas en la base de datos?
Respuesta: Re: No sale toda la lista -
dannypanda05 - 08.03.2016
Quote:
Originally Posted by SickAttack
new final_string[3000] o por hay.
Y estas seguro que tienes al menos 100 filas en la base de datos?
|
Sн, tengo como 2500, como vez lo estoy usando en los tops (tops 100) Y en algunos de ellos una fila sale incompleto, le eh puesto para leer todas las casas que tengo que son 75 pero sale como 63 y medio xD
Voy a seguir intentando subirle mбs, pero siento que no se estan usando todas las celdas por mбs que le suba y gaste memoria al pedo.
Edito: Aquн un ejemplo, ponga el valor que le ponga se queda siempre asi:
Re: No sale toda la lista -
Jastak - 08.03.2016
creo que lo mejor serнa que pusieras un lнmite de por ejemplo 30 y pues al presionar (en vez de "atrбs", un "Siguiente") "Siguiente" pues comience desde ese punto y el lнmite serнa ese punto + el mбximo (30)
Respuesta: Re: No sale toda la lista -
dannypanda05 - 08.03.2016
Quote:
Originally Posted by Jastak
creo que lo mejor serнa que pusieras un lнmite de por ejemplo 30 y pues al presionar (en vez de "atrбs", un "Siguiente") "Siguiente" pues comience desde ese punto y el lнmite serнa ese punto + el mбximo (30)
|
Si, eso mismo pensй y asi lo hice, tube que agregar DESC limit 50 OFFSET 50 donde OFFSET 50 significa que ignora los 50 primeros y asн en la lista siguiente me empieza desde 51 hasta 100, asi que practicamente ya arreglй el problema, gracias ^^
Re: Respuesta: Re: No sale toda la lista -
SickAttack - 08.03.2016
Quote:
Originally Posted by dannypanda05
Si, eso mismo pensй y asi lo hice, tube que agregar DESC limit 50 OFFSET 50 donde OFFSET 50 significa que ignora los 50 primeros y asн en la lista siguiente me empieza desde 51 hasta 100, asi que practicamente ya arreglй el problema, gracias ^^
|
LIMIT %d, %d