21.11.2016, 04:05
Hello users of forum-samp, i have problem with a query:
The problem is that query not given results (rows) and no errors in the log.
This is the cmd complete:
The cmd return the message that i place when not give rows the result of query.
I dont know if pawn allow vars and conditionals in the query.
Thanks.
PHP код:
SET @precioColor := 0, @ID = -1;
SELECT @ID := `col_id` AS colorID, `col_nombre` AS colorNombre, `col_html` AS colorHTML,
if((SELECT servidor_Compra.art_id FROM servidor_Compra INNER JOIN servidor_Color ON servidor_Compra.art_id = servidor_Color.col_id WHERE servidor_Compra.`usu_id` = 1
AND servidor_Color.col_id = @ID), @precioColor := 'COMPRADO', @precioColor := (SELECT `col_precio` FROM servidor_Color WHERE `col_id` = @ID)) AS colorPrecio FROM servidor_Color WHERE `col_precio` != 0
This is the cmd complete:
pawn Код:
CMD:colpremium(playerid, params[])
{
/* == ESTRUCTURA CONSULTA == */
g_Consulta[playerid] = "";
strcat(g_Consulta[playerid], "SET @precioColor := 0, @ID = -1;");
strcat(g_Consulta[playerid], "SELECT @ID := `col_id` AS colorID, `col_nombre` AS colorNombre, `col_html` AS colorHTML,");
strcat(g_Consulta[playerid], sprintf("if((SELECT servidor_Compra.art_id FROM servidor_Compra INNER JOIN servidor_Color ON servidor_Compra.art_id = servidor_Color.col_id WHERE servidor_Compra.`usu_id` = %d", infJugador[playerid][ID]));
strcat(g_Consulta[playerid], " AND servidor_Color.col_id = @ID), @precioColor := 'COMPRADO', @precioColor := (SELECT `col_precio` FROM servidor_Color WHERE `col_id` = @ID)) AS colorPrecio FROM servidor_Color WHERE `col_precio` != 0");
mysql_query(hBD, g_Consulta[playerid]);
/* == AQUI TERMINA LA CONSULTA ==*/
if(cache_num_rows() == 0)
return SendClientMsg(playerid, COLOR_ROJO, "*", "Se ha producido un error, si este persiste por favor comunicar a travйs de /reportar bug [Descripciуn]");
new f_InfDialogo[500] = "Nombre del Color\tPrecio", f_colNombre[30], f_colHTML[7], f_colPrecio[16];
for(new i = 0; i < cache_num_rows(); i++)
{
cache_get_value_name(i, "colorNombre", f_colNombre);
cache_get_value_name(i, "colorHTML", f_colHTML);
cache_get_value_name(i, "colorPrecio", f_colPrecio);
strcat(f_InfDialogo, sprintf("\n{%s}%s\t"COLOR_SIMBOLO_USD"${FFFFFF}%s", f_colHTML, f_colNombre, f_colPrecio));
}
ShowPlayerDialog(playerid, DIALOGO_COLPREMIUM_MENU, DIALOG_STYLE_TABLIST_HEADERS, "Menъ de Colores < Premium >", f_InfDialogo, "Aceptar", "Salir");
return true;
}
pawn Код:
Se ha producido un error, si este persiste por favor comunicar a travйs de /reportar bug [Descripciуn]
Thanks.