Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2014-11-21, 21:10


Blur







Wiek: 28
Na forum: 4298 dni
Posty: 47
Nick w MP: Blu

Piwa: 2

Respekt: 50

Witam, tworze skrypt na panel szefa policji.
Potrzebuje do tego pobierania wszystkich pracownik?w z bazy.
Pracownicy si? pobieraj?, ale tworzy row tylko dla jednego.


Kodzik:
c-side

function napiszDaneSzefPoli(x,y,z,r)
guiGridListClear(SzefPoli.gridlist[1])

local row guiGridListAddRow SzefPoli.gridlist[1])
guiGridListSetItemText SzefPoli.gridlist[1], row1xrfalsefalse )
guiGridListSetItemText SzefPoli.gridlist[1], row2rrfalsefalse )
guiGridListSetItemText SzefPoli.gridlist[1], row3yrfalsefalse )
guiGridListSetItemText SzefPoli.gridlist[1], row4zrfalsefalse )
end
addEvent("client:napiszDaneSzefPoli",true)
addEventHandler("client:napiszDaneSzefPoli",root,napiszDaneSzefPoli)



s-side:

function PolicjaSzefPobierzDane()
local query dbQuery(handler"SELECT * FROM `frakcje_policja_pracownicy`"local resultnumrows dbPoll(query, -1)
if (result and numrows 0then
for indexrow in pairs(result) do
local x = (row['id'])
local y = (row['stanowisko'])
local z = (row['mandaty'])
local r = (row['nick'])
triggerClientEvent(source,"client:napiszDaneSzefPoli",getRootElement(),x,y,z,r)
outputChatBox("Szef Policji: Pomy?lnie wczytano wszystkie dane.",source,255,255,255)
end
end
end
addEvent("server:PolicjaSzefPobierzDane",true)
addEventHandler("server:PolicjaSzefPobierzDane",root,PolicjaSzefPobierzDane)




Pozdrawiam i licze na uzyskanie pomocy :D

Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-11-21, 23:24


Tey







Wiek: 31
Na forum: 4876 dni
Posty: 155
Nick w MP: l0nger

Piwa: 280

Respekt: 193
Respekt: 193Respekt: 193

A dziwisz si? kolego, ?e masz tylko jeden rekord w gridLi?cie? Pow?d jest banalnie prosty i znajduje si? o tutaj:

for indexrow in pairs(result) do
local x = (row['id'])
local y = (row['stanowisko'])
local z = (row['mandaty'])
local r = (row['nick'])
triggerClientEvent(source,"client:napiszDaneSzefPoli",getRootElement(),x,y,z,r)

i jeszcze tutaj

function napiszDaneSzefPoli(x,y,z,r)
guiGridListClear(SzefPoli.gridlist[1])

local row guiGridListAddRow SzefPoli.gridlist[1])
guiGridListSetItemText SzefPoli.gridlist[1], row1xrfalsefalse )
guiGridListSetItemText SzefPoli.gridlist[1], row2rrfalsefalse )
guiGridListSetItemText SzefPoli.gridlist[1], row3yrfalsefalse )
guiGridListSetItemText SzefPoli.gridlist[1], row4zrfalsefalse )
end

A wi?c tak - przeanalizujmy kod. Wysy?asz zapytanie, odbierasz zapytanie i przekazujesz do zmiennej, potem sprawdzasz korzystaj?c z instrukcji warunkowej. Ta, ma za zadanie wywo?a? event "client:napiszDaneSzefPoli" co ITERACJE! A co to znaczy ITERACJA? No w?a?nie... Iteracja to ka?da kolejna przeprowadzona operacja, dokonywana w czasie trwania "p?tli" do jakiej? warto?ci - w tym przypadku uzyskania pe?nej warto?ci przez zmienn? "result".

Wyja?nijmy sobie par? fakt?w. Po pierwsze, wywo?ywanie eventu w czasie p?tli - akurat w tej sytuacji to do?? kiepski pomys?, bo jakby nie patrze? w kodzie po stronie klienta masz NAJPIERW czyszczenie gridList, a p??niej jej wype?nienie. Po drugie, zalecam Ci przes?a? pobrane warto?ci do klienta, a tam dopiero zrobi? p?tle, przetworzy? wszystkie dane i stworzy? potrzebne rekordy czy tam jak to nazwa?e? "ROWY".

Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-11-22, 00:51


Blur







Wiek: 28
Na forum: 4298 dni
Posty: 47
Nick w MP: Blu

Piwa: 2

Respekt: 50

Tey, czyli mam przerzucic na client "result" i "row", potem p?tlowa? ?



Edit. Dzi?kuje za pomoc, temat mo?na zamkn?? :)

Postaw piwo autorowi tego posta
 

 
Tagi: funckja :: tworzenie :: rowów
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Funckja na tworzenie rowów Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

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
Dodaj temat do Ulubionych
Wersja do druku