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

Wysłany: 2016-07-04, 07:07


GamerHD11







Wiek: 24
Na forum: 4402 dni
Posty: 259
Nick w MP: SzokoHD

Piwa: 23

Respekt: 50

No bym musia? znale?? jaki program do otwierania plik?w DB, polecasz jakis ?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-04, 08:21


AteX







Wiek: 27
Na forum: 4157 dni
Posty: 925
Nick w MP: #AteX

Piwa: 8366

Respekt: 775,3
Respekt: 775,3Respekt: 775,3

"GamerHD11" napisał/a:

No bym musia? znale?? jaki program do otwierania plik?w DB, polecasz jakis ?

http://sqlitebrowser.org/

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-04, 11:19


GamerHD11







Wiek: 24
Na forum: 4402 dni
Posty: 259
Nick w MP: SzokoHD

Piwa: 23

Respekt: 50

AteX, dzi?ki a co do zapisu to normalnie zapisuje sie nazw? konta

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-04, 19:02


luki123luki123

Place Game






Wiek: 28
Na forum: 5416 dni
Posty: 1948
Nick w MP: LuKiO

Piwa: 6103

Respekt: 611
Respekt: 611Respekt: 611

GamerHD11, witam chia?bym zwr?ci? ci uwag? ?e w funkcji na zapisywanie musisz najpierw sprawdzi? czy podane auto zosta?o zapisane je?eli tak to je tylko aktualizujesz a je?eli nie to je dodaje. Bez sprawdzanie takiego skrypt nie b?dzie ci do ko?ca dzia?a?.

Kolejn? spraw? to r?b skrypty tak ?eby u?atwi? sobie programowanie, przejrzysto?? kodu oraz optymalniejsze by?y.

Chodzi mi na np. o ten kod:
 addVehicleUpgrade(auto, v["t0"])
                addVehicleUpgrade(auto, v["t1"])
                addVehicleUpgrade(auto, v["t2"])
                addVehicleUpgrade(auto, v["t3"])
                addVehicleUpgrade(auto, v["t4"])
                addVehicleUpgrade(auto, v["t5"])
                addVehicleUpgrade(auto, v["t6"])
                addVehicleUpgrade(auto, v["t7"])
                addVehicleUpgrade(auto, v["t8"])
                addVehicleUpgrade(auto, v["t9"])
                addVehicleUpgrade(auto, v["t13"])
                addVehicleUpgrade(auto, v["t14"])
                addVehicleUpgrade(auto, v["t15"])
                addVehicleUpgrade(auto, v["t16"])

Jak by? zapisywa? tuning po kuleli czyli od 1 do np. 13 to by? m?g? tak nawet zrobi?:
for i= 0, 13 do
addVehicleUpgrade(auto, v["t"..i..""])
end

Nie wygoda to lepiej ? patrz ile linijek mniej masz ju? do napisania.
Wystarczy logicznie pomy?le?.
GamerHD11, O co chodzi ci z tym ostatnim pytaniem ? Jakie konta.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-04, 20:28


GamerHD11







Wiek: 24
Na forum: 4402 dni
Posty: 259
Nick w MP: SzokoHD

Piwa: 23

Respekt: 50

To mam wybra? wszystkie auta za pomoc? SELECT, potem u?y? dbPool i sprawdzi? czy wynik jest poprawny ?

Takie co? zrobi?em i nie dzia?a:

addCommandHandler("zapisz", function ( plr )
    acc = getAccountName(getPlayerAccount(plr))
    if isObjectInACLGroup("user." ..acc, aclGetGroup("Admin")) then
    for _,v in ipairs ( getElementsByType ( "vehicle", resourceRoot )) do
    if getElementData(v, "prywatne") then
    local wybierz = dbQuery(conn, "SELECT * FROM OP_Vehicles")
    local result = dbPool(wybierz, -1)
    if result then
        local pojazdID = getElementModel ( v )
        local c1,c2,c3,c4 = getVehicleColor ( v )
        local x,y,z = getElementPosition ( v )
        local rotx, roty, rotz = getElementRotation ( v )
        local id = getElementData(v, "vehid")
        local owner = getElementData(v, "owner")
        local przebieg = getElementData(v, "przebieg")
        local paliwo = getElementData(v, "paliwo")
        local bak = getElementData(v, "bak")
        local t0 = getVehicleUpgradeOnSlot(v, 0)
        local t1 = getVehicleUpgradeOnSlot(v, 1)
        local t2 = getVehicleUpgradeOnSlot(v, 2)
        local t3 = getVehicleUpgradeOnSlot(v, 3)
        local t4 = getVehicleUpgradeOnSlot(v, 4)
        local t5 = getVehicleUpgradeOnSlot(v, 5)
        local t6 = getVehicleUpgradeOnSlot(v, 6)
        local t7 = getVehicleUpgradeOnSlot(v, 7)
        local t8 = getVehicleUpgradeOnSlot(v, 8)
        local t9 = getVehicleUpgradeOnSlot(v, 9)
        local t13 = getVehicleUpgradeOnSlot(v, 13)
        local t14 = getVehicleUpgradeOnSlot(v, 14)
        local t15 = getVehicleUpgradeOnSlot(v, 15)
        local t16 = getVehicleUpgradeOnSlot(v, 16)
        local felgi = getVehicleUpgradeOnSlot(v, 12)
        local paintjob = getVehiclePaintjob(v)
        local hr, hg, hb = getVehicleHeadLightColor(v)
        local tablica = getVehiclePlateText(v)
        local wariant1, wariant2 = getVehicleVariant(v)
        local vmax = getVehicleHandling(auto).maxVelocity
        local acceler = getVehicleHandling(auto).engineAcceleration
         dbQuery ( conn, "UPDATE OP_Vehicles SET model = ?, posx = ?, posy = ?, posz = ?, rotx = ?, roty = ?, rotz = ?, color1 = ?, color2 = ?, color3 = ?, color4 = ?, id = ?, owner = ?, przebieg = ?, paliwo = ?, bak = ?, paintjob = ?, hr = ?, hg = ?, hb = ?, felgi = ?, t0 = ?, t1 = ?, t2 = ?, t3 = ?, t4 = ?, t5 = ?, t6 = ?, t7 = ?, t8 = ?, t9 = ?, t13 = ?, t14 = ?, t15 = ?, t16 = ?, tablica = ?, wariant1 = ?, wariant2 = ?, vmax = ?, acceler = ?", pojazdID, x, y, z, rotx, roty, rotz, c1, c2, c3, c4, id, owner, przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler)
        else
         dbQuery ( conn, "INSERT INTO OP_Vehicles (model, posx, posy, posz, rotx, roty, rotz, color1, color2 ,color3, color4, id, owner, przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", pojazdID, x, y, z, rotx, roty, rotz, c1, c2, c3, c4, id, owner, przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler)
         end
    end
    end
    end
end)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-04, 22:31


luki123luki123

Place Game






Wiek: 28
Na forum: 5416 dni
Posty: 1948
Nick w MP: LuKiO

Piwa: 6103

Respekt: 611
Respekt: 611Respekt: 611

GamerHD11, tutaj mo?esz:
local wybierz = dbQuery(conn, "SELECT * FROM OP_Vehicles")

U?y? po OP_Vehicles dalej u?y? WHERE potem kolumne = argument
A i zamiast * ( ma?e wyt?umaczenie o co tu chodzi z *, tutaj pobieramy kolumn? jak? chcemy pobra? w przypadku gwiazdki s? to wszystkie kolumny, mo?emy wpisa? te? nazw? kolumny aby nie obci??a? niepotrzebnie bazy Dannych.

Tutaj przyk?ad:
https://github.com/ShuffleGTAO/Scripts/blob/master/PlayerSaveSQL/players.lua

[ Dodano: 2016-07-04, 22:32 ]
GamerHD11, W twoim przyk?adzie tylko sprawdzasz czy polecenie zosta?o wykonane czy te? nie:
if result then


Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-05, 09:12


GamerHD11







Wiek: 24
Na forum: 4402 dni
Posty: 259
Nick w MP: SzokoHD

Piwa: 23

Respekt: 50

Tak dzia?a ale nie updateuje pojazdu, tylko go wprowadza do bazy



local conn = dbConnect ( "sqlite", "db.db" )

addEventHandler ( "onResourceStart", resourceRoot, function (plr)
    if conn then
    plr = source
        dbExec ( conn, "CREATE TABLE IF NOT EXISTS OP_Vehicles(model INTEGER, posx FLOAT, posy FLOAT, posz FLOAT, rotx FLOAT, roty FLOAT, rotz FLOAT, color1 INTEGER, color2 INTEGER, color3 INTEGER, color4 INTEGER, id INTEGER, owner TEXT, przebieg FLOAT, paliwo FLOAT, bak FLOAT, paintjob INTEGER, hr INTEGER, hg INTEGER, hb INTEGER, felgi INTEGER, t0 INTEGER, t1 INTEGER, t2 INTEGER, t3 INTEGER, t4 INTEGER, t5 INTEGER, t6 INTEGER, t7 INTEGER, t8 INTEGER, t9 INTEGER, t13 INTEGER, t14 INTEGER, t15 INTEGER, t16 INTEGER, tablica TEXT, wariant1 INTEGER, wariant2 INTEGER, vmax FLOAT, acceler FLOAT )" )
        local q = dbQuery ( conn, "SELECT * FROM OP_Vehicles")
        local result = dbPoll ( q, -1 )
        dbFree(q)
        if #result == 1 then
            for _,v in pairs ( result ) do
                local auto = createVehicle ( v["model"], v["posx"], v["posy"], v["posz"], v["rotx"], v["roty"], v["rotz"] )
                setVehicleColor ( auto, v["color1"], v["color2"], v["color3"], v["color4"] )
                setElementData (auto, "vehid", v["id"])
                setElementData (auto, "owner", v["owner"])
                setElementData (auto, "przebieg", v["przebieg"])
                setElementData (auto, "paliwo", v["paliwo"])
                setElementData (auto, "bak", v["bak"])
                for i= 0, 9 do
                addVehicleUpgrade(auto, v["t"..i..""])
                end
                for is = 13,16 do
                addVehicleUpgrade(auto, v["t"..is..""])
                end
                setVehiclePaintjob(auto, v["paintjob"])
                setVehicleVariant(auto, v["wariant1"], v["wariant2"])
                setVehicleHeadLightColor(auto, v["hr"], v["hg"], v["hb"])
                setVehiclePlateText(auto, v["tablica"])
                setVehicleHandling(auto, "engineAcceleration", v["acceler"])
                setVehicleHandling(auto, "maxVelocity", v["vmax"])
                setVehicleOverrideLights(auto, 1)
            end
        end
    end
end)



addCommandHandler("zapisz", function ( plr )
    acc = getAccountName(getPlayerAccount(plr))
    if isObjectInACLGroup("user." ..acc, aclGetGroup("Admin")) then
    for _,v in ipairs ( getElementsByType ( "vehicle", resourceRoot )) do
    if getElementData(v, "prywatne") then
    local wybierz = dbQuery(conn, "SELECT owner FROM OP_Vehicles WHERE owner = ?", getElementData(v, "owner"))
    local result = dbPoll(wybierz, -1)
    dbFree(wybierz)
        local pojazdID = getElementModel ( v )
        local c1,c2,c3,c4 = getVehicleColor ( v )
        local x,y,z = getElementPosition ( v )
        local rotx, roty, rotz = getElementRotation ( v )
        local id = getElementData(v, "vehid")
        local przebieg = getElementData(v, "przebieg")
        local paliwo = getElementData(v, "paliwo")
        local bak = getElementData(v, "bak")
        local t0 = getVehicleUpgradeOnSlot(v, 0)
        local t1 = getVehicleUpgradeOnSlot(v, 1)
        local t2 = getVehicleUpgradeOnSlot(v, 2)
        local t3 = getVehicleUpgradeOnSlot(v, 3)
        local t4 = getVehicleUpgradeOnSlot(v, 4)
        local t5 = getVehicleUpgradeOnSlot(v, 5)
        local t6 = getVehicleUpgradeOnSlot(v, 6)
        local t7 = getVehicleUpgradeOnSlot(v, 7)
        local t8 = getVehicleUpgradeOnSlot(v, 8)
        local t9 = getVehicleUpgradeOnSlot(v, 9)
        local t13 = getVehicleUpgradeOnSlot(v, 13)
        local t14 = getVehicleUpgradeOnSlot(v, 14)
        local t15 = getVehicleUpgradeOnSlot(v, 15)
        local t16 = getVehicleUpgradeOnSlot(v, 16)
        local felgi = getVehicleUpgradeOnSlot(v, 12)
        local paintjob = getVehiclePaintjob(v)
        local hr, hg, hb = getVehicleHeadLightColor(v)
        local tablica = getVehiclePlateText(v)
        local wariant1, wariant2 = getVehicleVariant(v)
        local vmax = getVehicleHandling(auto).maxVelocity
        local acceler = getVehicleHandling(auto).engineAcceleration
        if #result == 1 then
         dbQuery ( conn, "UPDATE OP_Vehicles SET model = '?', posx = '?', posy = '?', posz = '?', rotx = '?', roty = '?', rotz = '?', color1 = '?', color2 = '?', color3 = '?', color4 = '?', id = '?', przebieg = '?', paliwo = '?', bak = '?', paintjob = '?', hr = '?', hg = '?', hb = '?', felgi = '?', t0 = '?', t1 = '?', t2 = '?', t3 = '?', t4 = '?', t5 = '?', t6 = '?', t7 = '?', t8 = '?', t9 = '?', t13 = '?', t14 = '?', t15 = '?', t16 = '?', tablica = '?', wariant1 = '?', wariant2 = '?', vmax = '?', acceler = '?' WHERE owner = ?", pojazdID, x, y, z, rotx, roty, rotz, c1, c2, c3, c4, id, przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler, getElementData(v, "owner"))
        elseif #result == 0 then
         dbQuery ( conn, "INSERT INTO OP_Vehicles (model, posx, posy, posz, rotx, roty, rotz, color1, color2 ,color3, color4, id, owner, przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", pojazdID, x, y, z, rotx, roty, rotz, c1, c2, c3, c4, id, getElementData(v, "owner"), przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler)
         end
    end
    end
    end
end)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-05, 10:57


luki123luki123

Place Game






Wiek: 28
Na forum: 5416 dni
Posty: 1948
Nick w MP: LuKiO

Piwa: 6103

Respekt: 611
Respekt: 611Respekt: 611

GamerHD11, sprawdz funkcja dbFree zapytanie update.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-05, 11:12


GamerHD11







Wiek: 24
Na forum: 4402 dni
Posty: 259
Nick w MP: SzokoHD

Piwa: 23

Respekt: 50

Zrobi?em tak i nic

addCommandHandler("zapisz", function ( plr )
    acc = getAccountName(getPlayerAccount(plr))
    if isObjectInACLGroup("user." ..acc, aclGetGroup("Admin")) then
    for _,v in ipairs ( getElementsByType ( "vehicle", resourceRoot )) do
    if getElementData(v, "prywatne") then
    local wybierz = dbQuery(conn, "SELECT owner FROM OP_Vehicles WHERE owner = ?", getElementData(v, "owner"))
    local result = dbPoll(wybierz, -1)
    dbFree(wybierz)
        local pojazdID = getElementModel ( v )
        local c1,c2,c3,c4 = getVehicleColor ( v )
        local x,y,z = getElementPosition ( v )
        local rotx, roty, rotz = getElementRotation ( v )
        local id = getElementData(v, "vehid")
        local przebieg = getElementData(v, "przebieg")
        local paliwo = getElementData(v, "paliwo")
        local bak = getElementData(v, "bak")
        local t0 = getVehicleUpgradeOnSlot(v, 0)
        local t1 = getVehicleUpgradeOnSlot(v, 1)
        local t2 = getVehicleUpgradeOnSlot(v, 2)
        local t3 = getVehicleUpgradeOnSlot(v, 3)
        local t4 = getVehicleUpgradeOnSlot(v, 4)
        local t5 = getVehicleUpgradeOnSlot(v, 5)
        local t6 = getVehicleUpgradeOnSlot(v, 6)
        local t7 = getVehicleUpgradeOnSlot(v, 7)
        local t8 = getVehicleUpgradeOnSlot(v, 8)
        local t9 = getVehicleUpgradeOnSlot(v, 9)
        local t13 = getVehicleUpgradeOnSlot(v, 13)
        local t14 = getVehicleUpgradeOnSlot(v, 14)
        local t15 = getVehicleUpgradeOnSlot(v, 15)
        local t16 = getVehicleUpgradeOnSlot(v, 16)
        local felgi = getVehicleUpgradeOnSlot(v, 12)
        local paintjob = getVehiclePaintjob(v)
        local hr, hg, hb = getVehicleHeadLightColor(v)
        local tablica = getVehiclePlateText(v)
        local wariant1, wariant2 = getVehicleVariant(v)
        local vmax = getVehicleHandling(auto).maxVelocity
        local acceler = getVehicleHandling(auto).engineAcceleration
        if #result == 1 then
        local update = dbQuery ( conn, "UPDATE OP_Vehicles SET model = '?', posx = '?', posy = '?', posz = '?', rotx = '?', roty = '?', rotz = '?', color1 = '?', color2 = '?', color3 = '?', color4 = '?', id = '?', przebieg = '?', paliwo = '?', bak = '?', paintjob = '?', hr = '?', hg = '?', hb = '?', felgi = '?', t0 = '?', t1 = '?', t2 = '?', t3 = '?', t4 = '?', t5 = '?', t6 = '?', t7 = '?', t8 = '?', t9 = '?', t13 = '?', t14 = '?', t15 = '?', t16 = '?', tablica = '?', wariant1 = '?', wariant2 = '?', vmax = '?', acceler = '?' WHERE owner = ?", pojazdID, x, y, z, rotx, roty, rotz, c1, c2, c3, c4, id, przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler, getElementData(v, "owner"))
        dbFree(update)
        elseif #result == 0 then
         dbQuery ( conn, "INSERT INTO OP_Vehicles (model, posx, posy, posz, rotx, roty, rotz, color1, color2 ,color3, color4, id, owner, przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", pojazdID, x, y, z, rotx, roty, rotz, c1, c2, c3, c4, id, getElementData(v, "owner"), przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler)
         end
    end
    end
    end
end)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-05, 12:12


luki123luki123

Place Game






Wiek: 28
Na forum: 5416 dni
Posty: 1948
Nick w MP: LuKiO

Piwa: 6103

Respekt: 611
Respekt: 611Respekt: 611

GamerHD11, sprawd? czy if jest spe?niany
dodaj np. outputChatBox

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-05, 13:01


GamerHD11







Wiek: 24
Na forum: 4402 dni
Posty: 259
Nick w MP: SzokoHD

Piwa: 23

Respekt: 50

Nic nie pisze podczas update ale dzia?a podczas zapisu pierwszego

local conn = dbConnect ( "sqlite", "db.db" )

addEventHandler ( "onResourceStart", resourceRoot, function (plr)
    if conn then
    plr = source
        dbExec ( conn, "CREATE TABLE IF NOT EXISTS OP_Vehicles(model INTEGER, posx FLOAT, posy FLOAT, posz FLOAT, rotx FLOAT, roty FLOAT, rotz FLOAT, color1 INTEGER, color2 INTEGER, color3 INTEGER, color4 INTEGER, id INTEGER, owner VARCHAR, przebieg FLOAT, paliwo FLOAT, bak FLOAT, paintjob INTEGER, hr INTEGER, hg INTEGER, hb INTEGER, felgi INTEGER, t0 INTEGER, t1 INTEGER, t2 INTEGER, t3 INTEGER, t4 INTEGER, t5 INTEGER, t6 INTEGER, t7 INTEGER, t8 INTEGER, t9 INTEGER, t13 INTEGER, t14 INTEGER, t15 INTEGER, t16 INTEGER, tablica TEXT, wariant1 INTEGER, wariant2 INTEGER, vmax FLOAT, acceler FLOAT )" )
        local q = dbQuery ( conn, "SELECT * FROM OP_Vehicles")
        local result = dbPoll ( q, -1 )
        dbFree(q)
        if #result == 1 then
            for _,v in pairs ( result ) do
                local auto = createVehicle ( v["model"], v["posx"], v["posy"], v["posz"], v["rotx"], v["roty"], v["rotz"] )
                setVehicleColor ( auto, v["color1"], v["color2"], v["color3"], v["color4"] )
                setElementData (auto, "vehid", v["id"])
                setElementData (auto, "owner", v["owner"])
                setElementData (auto, "przebieg", v["przebieg"])
                setElementData (auto, "paliwo", v["paliwo"])
                setElementData (auto, "bak", v["bak"])
                for i= 0, 9 do
                addVehicleUpgrade(auto, v["t"..i..""])
                end
                for is = 13,16 do
                addVehicleUpgrade(auto, v["t"..is..""])
                end
                setVehiclePaintjob(auto, v["paintjob"])
                setVehicleVariant(auto, v["wariant1"], v["wariant2"])
                setVehicleHeadLightColor(auto, v["hr"], v["hg"], v["hb"])
                setVehiclePlateText(auto, v["tablica"])
                setVehicleHandling(auto, "engineAcceleration", v["acceler"])
                setVehicleHandling(auto, "maxVelocity", v["vmax"])
                setVehicleOverrideLights(auto, 1)
            end
        end
    end
end)
addCommandHandler("zapisz", function ( plr )
    acc = getAccountName(getPlayerAccount(plr))
    if isObjectInACLGroup("user." ..acc, aclGetGroup("Admin")) then
    for _,v in ipairs ( getElementsByType ( "vehicle", resourceRoot )) do
    if getElementData(v, "prywatne") then
    local wybierz = dbQuery(conn, "SELECT owner FROM OP_Vehicles WHERE owner = ?", getElementData(v, "owner"))
    local result = dbPoll(wybierz, -1)
    dbFree(wybierz)
        local pojazdID = getElementModel ( v )
        local c1,c2,c3,c4 = getVehicleColor ( v )
        local x,y,z = getElementPosition ( v )
        local rotx, roty, rotz = getElementRotation ( v )
        local id = getElementData(v, "vehid")
        local przebieg = getElementData(v, "przebieg")
        local paliwo = getElementData(v, "paliwo")
        local bak = getElementData(v, "bak")
        local t0 = getVehicleUpgradeOnSlot(v, 0)
        local t1 = getVehicleUpgradeOnSlot(v, 1)
        local t2 = getVehicleUpgradeOnSlot(v, 2)
        local t3 = getVehicleUpgradeOnSlot(v, 3)
        local t4 = getVehicleUpgradeOnSlot(v, 4)
        local t5 = getVehicleUpgradeOnSlot(v, 5)
        local t6 = getVehicleUpgradeOnSlot(v, 6)
        local t7 = getVehicleUpgradeOnSlot(v, 7)
        local t8 = getVehicleUpgradeOnSlot(v, 8)
        local t9 = getVehicleUpgradeOnSlot(v, 9)
        local t13 = getVehicleUpgradeOnSlot(v, 13)
        local t14 = getVehicleUpgradeOnSlot(v, 14)
        local t15 = getVehicleUpgradeOnSlot(v, 15)
        local t16 = getVehicleUpgradeOnSlot(v, 16)
        local felgi = getVehicleUpgradeOnSlot(v, 12)
        local paintjob = getVehiclePaintjob(v)
        local hr, hg, hb = getVehicleHeadLightColor(v)
        local tablica = getVehiclePlateText(v)
        local wariant1, wariant2 = getVehicleVariant(v)
        local vmax = getVehicleHandling(auto).maxVelocity
        local acceler = getVehicleHandling(auto).engineAcceleration
        if #result == 1 then
        local update = dbQuery ( conn, "UPDATE OP_Vehicles SET model = '?', posx = '?', posy = '?', posz = '?', rotx = '?', roty = '?', rotz = '?', color1 = '?', color2 = '?', color3 = '?', color4 = '?', id = '?', przebieg = '?', paliwo = '?', bak = '?', paintjob = '?', hr = '?', hg = '?', hb = '?', felgi = '?', t0 = '?', t1 = '?', t2 = '?', t3 = '?', t4 = '?', t5 = '?', t6 = '?', t7 = '?', t8 = '?', t9 = '?', t13 = '?', t14 = '?', t15 = '?', t16 = '?', tablica = '?', wariant1 = '?', wariant2 = '?', vmax = '?', acceler = '?' WHERE owner = ?", pojazdID, x, y, z, rotx, roty, rotz, c1, c2, c3, c4, id, przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler, getElementData(v, "owner"))
        dbFree(update)
        outputChatBox("*Zaktualizowano pojazdy w bazie danych !", plr, 255, 255, 255)
        elseif #result == 0 then
         dbQuery ( conn, "INSERT INTO OP_Vehicles (model, posx, posy, posz, rotx, roty, rotz, color1, color2 ,color3, color4, id, owner, przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", pojazdID, x, y, z, rotx, roty, rotz, c1, c2, c3, c4, id, getElementData(v, "owner"), przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler)
         outputChatBox("*Dodano auta do bazy danych !", plr, 255, 255, 255)
         end
    end
    end
    end
end)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-05, 17:39


Jacob

Głupiomądry






Wiek: 28
Na forum: 5643 dni
Posty: 967
Nick w MP: Jacob

Piwa: 786

Respekt: 212,3
Respekt: 212,3Respekt: 212,3

Zacznijmy od tego ?e do zapyta? modyfikuj?cych baz? danych u?ywane si? funkcji dbExec, do kt?rej p??niej nie trzeba u?ywa? dbFree.
dbFree u?ywa si? tylko do zapyta? wybieraj?cych z u?yciem dbQuery. Luki wida?, ?e masz s?abe poj?cia o bazach danych i Twoje rozwi?zania s? bardzo niewydajne.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-05, 19:07


GamerHD11







Wiek: 24
Na forum: 4402 dni
Posty: 259
Nick w MP: SzokoHD

Piwa: 23

Respekt: 50

Usun??em wszystkie dbFree i teraz tylko aktualizuje pojazdy kt?re by?y zapisane w bazie ale jak kupie nowy i go zapisze to on sie nie zapisuje

addCommandHandler("zapisz", function ( plr )
    acc = getAccountName(getPlayerAccount(plr))
    if isObjectInACLGroup("user." ..acc, aclGetGroup("Admin")) then
    for _,v in ipairs ( getElementsByType ( "vehicle", resourceRoot )) do
    if getElementData(v, "prywatne") then
    local wybierz = dbQuery(conn, "SELECT owner FROM OP_Vehicles WHERE owner = ?", getElementData(v, "owner"))
    local result = dbPoll(wybierz, -1)
        local pojazdID = getElementModel ( v )
        local c1,c2,c3,c4 = getVehicleColor ( v )
        local x,y,z = getElementPosition ( v )
        local rotx, roty, rotz = getElementRotation ( v )
        local id = getElementData(v, "vehid")
        local przebieg = getElementData(v, "przebieg")
        local paliwo = getElementData(v, "paliwo")
        local bak = getElementData(v, "bak")
        local t0 = getVehicleUpgradeOnSlot(v, 0)
        local t1 = getVehicleUpgradeOnSlot(v, 1)
        local t2 = getVehicleUpgradeOnSlot(v, 2)
        local t3 = getVehicleUpgradeOnSlot(v, 3)
        local t4 = getVehicleUpgradeOnSlot(v, 4)
        local t5 = getVehicleUpgradeOnSlot(v, 5)
        local t6 = getVehicleUpgradeOnSlot(v, 6)
        local t7 = getVehicleUpgradeOnSlot(v, 7)
        local t8 = getVehicleUpgradeOnSlot(v, 8)
        local t9 = getVehicleUpgradeOnSlot(v, 9)
        local t13 = getVehicleUpgradeOnSlot(v, 13)
        local t14 = getVehicleUpgradeOnSlot(v, 14)
        local t15 = getVehicleUpgradeOnSlot(v, 15)
        local t16 = getVehicleUpgradeOnSlot(v, 16)
        local felgi = getVehicleUpgradeOnSlot(v, 12)
        local paintjob = getVehiclePaintjob(v)
        local hr, hg, hb = getVehicleHeadLightColor(v)
        local tablica = getVehiclePlateText(v)
        local wariant1, wariant2 = getVehicleVariant(v)
        local vmax = getVehicleHandling(auto).maxVelocity
        local acceler = getVehicleHandling(auto).engineAcceleration
        if #result == 1 then
        local update = dbQuery ( conn, "UPDATE OP_Vehicles SET model = '?', posx = '?', posy = '?', posz = '?', rotx = '?', roty = '?', rotz = '?', color1 = '?', color2 = '?', color3 = '?', color4 = '?', id = '?', przebieg = '?', paliwo = '?', bak = '?', paintjob = '?', hr = '?', hg = '?', hb = '?', felgi = '?', t0 = '?', t1 = '?', t2 = '?', t3 = '?', t4 = '?', t5 = '?', t6 = '?', t7 = '?', t8 = '?', t9 = '?', t13 = '?', t14 = '?', t15 = '?', t16 = '?', tablica = '?', wariant1 = '?', wariant2 = '?', vmax = '?', acceler = '?', WHERE owner = ?", pojazdID, x, y, z, rotx, roty, rotz, c1, c2, c3, c4, id, przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler, getElementData(v, "owner"))
        outputChatBox("*Zaktualizowano pojazdy w bazie danych !", plr, 255, 255, 255)
        elseif #result == 0 then
         dbQuery ( conn, "INSERT INTO OP_Vehicles (model, posx, posy, posz, rotx, roty, rotz, color1, color2 ,color3, color4, id, owner, przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", pojazdID, x, y, z, rotx, roty, rotz, c1, c2, c3, c4, id, getElementData(v, "owner"), przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler)
         outputChatBox("*Dodano auta do bazy danych !", plr, 255, 255, 255)
         end
    end
    end
    end
end)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-05, 19:09


luki123luki123

Place Game






Wiek: 28
Na forum: 5416 dni
Posty: 1948
Nick w MP: LuKiO

Piwa: 6103

Respekt: 611
Respekt: 611Respekt: 611

Jacob, chodzi ci o bazy danych chodzi o te rozwi?zania ?

A co do dbQuery a dbFree, to tutaj dodam moje dwa s?owa.
Lepiej na pocz?tku u?ywa? dbQuery poniewa? mo?na sprawdzi? czy jest jaki kolwiek b??d z zapytaniem lub ca?? funkcj? dbQuery. Co do stosowania dbExec zamiast dbQuery nie jest to wymagane. Mo?na u?ywa? dbQuery lub dbExec zadzia?a ta funkcja i ta. Nie ma nic na wiki multitheftauto ?e powinno stosowa? si? funkcj? dbExec do modyfikowania bazy danych.

Kolejne dbFree mo?na u?y? do sprawdzenia czy jaki? b?a wyst?puj? z funkcj? lub zapytaniem ale nie trzeba. Nie wiem czemu piszesz
Cytat:

do kt?rej p??niej nie trzeba u?ywa? dbFree.

Nie wiem czemu tam napisa?e?, poniewa? nie trzeba nic u?ywa?. Mo?na u?y? ale nie jest to wymagane.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-05, 19:26


GamerHD11







Wiek: 24
Na forum: 4402 dni
Posty: 259
Nick w MP: SzokoHD

Piwa: 23

Respekt: 50

I jeszcze dodam, ?e jak nie ma ?adnych aut i si? zapisze pierwsze to na odwr?t dzia?a nieupdatuje ale dodaje auta do bazy kt?re s? zapisane po raz pierwszy

addCommandHandler("zapisz", function ( plr )
    acc = getAccountName(getPlayerAccount(plr))
    if isObjectInACLGroup("user." ..acc, aclGetGroup("Admin")) then
    for _,v in ipairs ( getElementsByType ( "vehicle", resourceRoot )) do
    if getElementData(v, "prywatne") then
    local wybierz = dbQuery(conn, "SELECT owner FROM OP_Vehicles WHERE owner = ?", getElementData(v, "owner"))
    local result = dbPoll(wybierz, -1)
        local pojazdID = getElementModel ( v )
        local c1,c2,c3,c4 = getVehicleColor ( v )
        local x,y,z = getElementPosition ( v )
        local rotx, roty, rotz = getElementRotation ( v )
        local id = getElementData(v, "vehid")
        local przebieg = getElementData(v, "przebieg")
        local paliwo = getElementData(v, "paliwo")
        local bak = getElementData(v, "bak")
        local t0 = getVehicleUpgradeOnSlot(v, 0)
        local t1 = getVehicleUpgradeOnSlot(v, 1)
        local t2 = getVehicleUpgradeOnSlot(v, 2)
        local t3 = getVehicleUpgradeOnSlot(v, 3)
        local t4 = getVehicleUpgradeOnSlot(v, 4)
        local t5 = getVehicleUpgradeOnSlot(v, 5)
        local t6 = getVehicleUpgradeOnSlot(v, 6)
        local t7 = getVehicleUpgradeOnSlot(v, 7)
        local t8 = getVehicleUpgradeOnSlot(v, 8)
        local t9 = getVehicleUpgradeOnSlot(v, 9)
        local t13 = getVehicleUpgradeOnSlot(v, 13)
        local t14 = getVehicleUpgradeOnSlot(v, 14)
        local t15 = getVehicleUpgradeOnSlot(v, 15)
        local t16 = getVehicleUpgradeOnSlot(v, 16)
        local felgi = getVehicleUpgradeOnSlot(v, 12)
        local paintjob = getVehiclePaintjob(v)
        local hr, hg, hb = getVehicleHeadLightColor(v)
        local tablica = getVehiclePlateText(v)
        local wariant1, wariant2 = getVehicleVariant(v)
        local vmax = getVehicleHandling(auto).maxVelocity
        local acceler = getVehicleHandling(auto).engineAcceleration
        if #result == 1 then
        local update = dbQuery ( conn, "UPDATE OP_Vehicles SET model = '?', posx = '?', posy = '?', posz = '?', rotx = '?', roty = '?', rotz = '?', color1 = '?', color2 = '?', color3 = '?', color4 = '?', id = '?', przebieg = '?', paliwo = '?', bak = '?', paintjob = '?', hr = '?', hg = '?', hb = '?', felgi = '?', t0 = '?', t1 = '?', t2 = '?', t3 = '?', t4 = '?', t5 = '?', t6 = '?', t7 = '?', t8 = '?', t9 = '?', t13 = '?', t14 = '?', t15 = '?', t16 = '?', tablica = '?', wariant1 = '?', wariant2 = '?', vmax = '?', acceler = '?', WHERE owner = ?", pojazdID, x, y, z, rotx, roty, rotz, c1, c2, c3, c4, id, przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler, getElementData(v, "owner"))
        outputChatBox("*Zaktualizowano pojazdy w bazie danych !", plr, 255, 255, 255)
        elseif #result == 0 then
         dbQuery ( conn, "INSERT INTO OP_Vehicles (model, posx, posy, posz, rotx, roty, rotz, color1, color2 ,color3, color4, id, owner, przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", pojazdID, x, y, z, rotx, roty, rotz, c1, c2, c3, c4, id, getElementData(v, "owner"), przebieg, paliwo, bak, paintjob, hr, hg, hb, felgi, t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t13, t14, t15, t16, tablica, wariant1, wariant2, vmax, acceler)
         outputChatBox("*Dodano auta do bazy danych !", plr, 255, 255, 255)
         end
    end
    end
    end
end)


Postaw piwo autorowi tego posta
 

 
Tagi: wszystkie :: auta :: się :: zapisują
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Wszystkie auta się zapisują 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