Postado Fevereiro 10, 2020 5 anos function onSay(player, words, param) local resultId = db.storeQuery('SELECT * FROM `player_autoloot` WHERE `player_id` = ' .. getPlayerGUID(player) ..'') local itemId = {result.getNumber(resultId, 'item_id')} local TotalItens, items = {} for i = 1, #itemId do items = itemId[i] TotalItens[#TotalItens + 1] = items end local ItensID for i = 1, #TotalItens do ItensID = TotalItens[i] player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "".. ItensID .."") end end Por que esse script retorna somente o Primeiro item_id que esta na database?? se o player tiver os itens (1111,1112,1113) nessa tabela ele somente retorna o 1111 no ".. ItensID .." Alguem sabe como faço pra pegar a array inteira do ResultId?
Postado Fevereiro 10, 2020 5 anos Solução function onSay(player, words, param) local ret, t = db.storeQuery('SELECT `item_id` FROM `player_autoloot` WHERE `player_id` = '..getPlayerGUID(player)),{} if ret then repeat t[#t+1] = result.getNumber(ret, 'item_id') until not result.next(ret) result.free(ret) end for _, var in pairs(t) do player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, var) end return true end Editado Fevereiro 10, 2020 5 anos por Vodkart (veja o histórico de edições) [*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*] DISCORD: vodkart#6090
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.