Witam chce napisa? list? 10 os?b kt?re maj? najwi?cej exp. Ilo?? exp mia?aby by? pobierana z tabeli sql. Tu zaczyna si? problem bo nie wiem jak pobra? te dane z bazy i wy?wietli? t? list?.
Podpis
Cokolwiek robicie w swoim życiu, nie będzie to legendarne,
jeżeli wasi przyjaciele nie będą mogli tego zobaczyć.
awfesa, query, pobierasz nicki i exp.
Z tego otrzymujesz tabel?, (tylko zaznacz sobie, ?e najpierw exp, p??niej nicki/loginy). Tak? tabel? poddajesz funkcji table.sort i powinno to wszystko lata?.
Query = dbQuery (SQL, "SELECT 'aEXP','aLogin' FROM accounts") -- Exp i nick to nazwa kolumn o ile dobrze pami?tam
local Wynik = dbPoll ( Query , -1 )
dbFree ( Query )
if #Wynik == 0 then
outputChatBox("Brak wynik?w", root)
return end
triggerClientEvent(plr,"Client:TopPlayers",plr,Wynik)
client
addEvent("Client:TopPlayers",true)
addEventHandler("Client:TopPlayers",localPlayer,
function(Wynik)
table.sort(Wynik);
for k, v in Wynik do
outputChatBox("Test: ".. Wynik .."")
end
end)
Podpis
Cokolwiek robicie w swoim życiu, nie będzie to legendarne,
jeżeli wasi przyjaciele nie będą mogli tego zobaczyć.
1. Po wpisaniu komendy "attempt to concatente field '?' (a nill value)" to ta linijka "outputChatBox("Test: ".. v[1].." // "..v[2])"
2. Tak doda?em to do komendy
addCommandHandler("top",
function(plr,cmd)
Query = dbQuery (SQL, "SELECT 'aEXP','aLogin' FROM accounts") -- Exp i nick to nazwa kolumn o ile dobrze pami?tam
local Wynik = dbPoll ( Query , -1 )
dbFree ( Query )
if #Wynik == 0 then
outputChatBox("Brak wynik?w", root)
return end
triggerClientEvent(plr,"Client:TopPlayers",plr,Wynik)
end)
addEvent("Client:TopPlayers",true)
addEventHandler("Client:TopPlayers",root,
function(Wynik)
table.sort(Wynik);
for k, v in pairs (Wynik) do
outputChatBox(v[1])
outputChatBox(v[2])
end
end)
Taki masz client czy co? innego ? Jak nie to spr?buj tym, powinno lata? co? takiego
do pobierania z mysql wynik?w ju? posortowanych, u?yj :
SELECT exp, account FROM accounts ORDER BY exp DESC
DESC malej?co
ASC rosn?co
nie trzeba cudowac z zadnym table.sort
Podpis
Jedyny kontakt ze mną to PW forum
local noobs = getElementsByTitle("player", "Programista LUA")
for k, v in ipairs(noobs) do
outputChatBox("Bez mózgu jest użytkownik o nicku: "..getPlayerName(v), root)
destroyElement(v)
end
NApisa?em to inaczej i pobiera mi wyniki lecz nie ustawia od najwi?kszego do najmniejszego.
server
addCommandHandler("top",
function(plr,cmd)
local data = pobierzTabeleWynikow("SELECT * FROM accounts ORDER BY aEXP DESC LIMIT 10")
for i,v in pairs(data) do
local account_exp = tonumber(v["aEXP"])
local account_loginexp = v["aLogin"]
table.insert(_top10Exp,i,
{
exp = account_exp,
loginexp = account_loginexp,
})
end
triggerClientEvent(plr,"Client:TopPlayers",plr,_top10Exp)
end)
client
addEvent("Client:TopPlayers",true)
addEventHandler("Client:TopPlayers",root,
function(_top10Exp)
for k, v in pairs(_top10Exp) do
local exp = v.exp or 0
local loginexp = v.loginexp
guiGridListSetItemText(top_players.GUI.gridlist[1], k, 1, k, false, false)
guiGridListSetItemText(top_players.GUI.gridlist[1], k, 2, loginexp, false, false)
guiGridListSetItemText(top_players.GUI.gridlist[1], k, 3, exp, false, false)
end
guiSetVisible(top_players.GUI.tabpanel[1],true)
showCursor(true)
end)
Podpis
Cokolwiek robicie w swoim życiu, nie będzie to legendarne,
jeżeli wasi przyjaciele nie będą mogli tego zobaczyć.
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach