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

Wysłany: 2017-04-25, 18:59


saller123

Dopiero się ucze ;)






Wiek: 25
Na forum: 4680 dni
Posty: 95
Nick w MP: Davitek

Piwa: 212

Respekt: 70

Witam, czy jest mo?liwo?? pobrania id "A_I" z tabeli odrazu po u?yciu tej funkcji?

local expp exports.mysql:_Exec("insert into pojazdy(model,ownerid) values (?,?)",model,ownerid)


Chodzi o to ?e chce nadac pojazdowi w element dacie jego id kt?re stworzy?o si? automatycznie po to aby potem stworzony pojazd mo?na by?o zapisa? z u?yciem "where id=?".

Dodam jeszcze funkcje z export?w:

local connection nil
addEventHandler("onResourceStart",resourceRoot,function(resource)
        connection dbConnect("mysql","dbname=******;host=******;port=3306;","******","******")
        if connection then
            outputDebugString("Polaczono z baza danych!")
            return true
        else
            outputDebugString("Blad podczas laczenia sie z baza danych!")
            return false
        end
    end
)

function _Query( ... )
    if connection then
        local query dbQuery(connection, ... )
        local result dbPoll(query,-1)
        return result
    else
        return false
    end
end

function _QuerySingle(str,...)
    if connection then
        local result _Query(str,...)
        if type(result) == 'table' then
            return result[1]
        end
    else
        return false
    end
end

function _Exec(str,...)
    if connection then
        local query dbExec(connection,str,...)
        return query
    else
        return false
    end
end


Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-25, 23:37


amited







Wiek: 26
Na forum: 3714 dni
Posty: 1233
Nick w MP: Amited

Piwa: 512

Respekt: 466
Respekt: 466

Czyli stworzyles auto, masz je w mysql ale teraz chcesz nadac mu id? Je?eli masz ID jako auto increment to przed zapytaniem dajesz :

local queryrowsid exports

I p??niej respisz auto ju? z id bo id jest nadane w bazie a je?eli masz system pojazd?w to samo znajdzie.

Podpis
"amited" napisał/a:
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-26, 10:42


2002kondzior







Wiek: 27
Na forum: 3835 dni
Posty: 36

Piwa: 6

Respekt: 70

Jeszcze od siebie dodam, ?e bez edycji pliku ??cz?cego z baz? trik kt?ry poda? amited nie zadzia?a. Jak zedytujesz skrypt na co? takiego i u?yjesz tej funkcji to powinno zadzia?a?


function _Query(...) 
    if not {...} then return end 
        local query dbQuery(db_handler, ...) 
        local resultnum_affected_rowslast_insert_id dbPoll(query, -1) 
    return resultnum_affected_rowslast_insert_id
end


Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-26, 16:33


saller123

Dopiero się ucze ;)






Wiek: 25
Na forum: 4680 dni
Posty: 95
Nick w MP: Davitek

Piwa: 212

Respekt: 70

A? tak mysql nie znam i nie wiem jak to zrobi? dok?adnie.

Odrazu po stworzeniu auta na serwerze nie w mysql chce nada? mu jego id kt?re stworzy?o si? w bazie danych.

setElementData(vehicle"vehicle:id"id)


function StworzPojazd(plr,model,posx,posy,posz,rotx,roty,rotz)
local ownerid getElementData(plr,"sid")
local expp exports.mysql:_Exec("insert into pojazdy(model,ownerid) values (?,?)",model,ownerid)
if expp then
    local vehicle createVehicle(modelposxposyposzrotxrotyrotz)
    if vehicle then
        warpPlayerIntoVehicle (plrvehicle)
    end
end
end


Zrobi?by? mi to? :/

[ Dodano: 2017-04-26, 21:47 ]
Pomo?e kto?? :/

Podpis
Jeżeli ci pomogłem, postaw piwerko :D
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-27, 21:58


2002kondzior







Wiek: 27
Na forum: 3835 dni
Posty: 36

Piwa: 6

Respekt: 70

Zamieni?e? to co poda?em w swoim skrypcie na ??czenie z baz?? Je?li tak to b?dzie to wygl?da? jako? tak:

-- to co przed exportem
local resultnumid exports.mysql:_Query("tutaj insert")
if result then
--tutaj tworzenie pojazdu
if vehicle then
-- tutaj warp
setElementData(vehicle"vehicle:id"id)
-- dalsza cze?? 


Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-28, 16:32


saller123

Dopiero się ucze ;)






Wiek: 25
Na forum: 4680 dni
Posty: 95
Nick w MP: Davitek

Piwa: 212

Respekt: 70

Ani w suszarce ani na tablicy rejesracyjnej ani na chacie nie chce wy?wietli? id pojazdu gdy pobieram getElementData(vehicle,"vehicle:id")

function StworzPojazd(plr,model,posx,posy,posz,rotx,roty,rotz)

local ownerid getElementData(plr,"sid")

local resultnumid exports.mysql:_Exec("insert into pojazdy(model,ownerid) values (?,?)",model,ownerid)
if result then
local vehicle createVehicle(modelposxposyposzrotxrotyrotz)
if vehicle then
warpPedIntoVehicle(plrvehicle)
setElementData(vehicle"vehicle:id"id)
setElementData(vehicle"vehicle:milage"0)
setElementData(vehicle"vehicle:fuel"100)
local name getPlayerName(plr)
setElementData(vehicle"ostkierowca"name)
end
end
end


Podpis
Jeżeli ci pomogłem, postaw piwerko :D
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-28, 21:49


2002kondzior







Wiek: 27
Na forum: 3835 dni
Posty: 36

Piwa: 6

Respekt: 70

O ile w skrypcie mysql podmieniles to co poda?em wcze?niej to w exporcie zamiast _Exec musi by? _Query (bez podmienienia w skrypcie na ??czno?? z mysql nie zadzia?a)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-28, 21:59


neku^







Wiek: 24
Na forum: 3521 dni
Posty: 461
Nick w MP: neku^

Piwa: 1186

Respekt: 320,5
Respekt: 320,5Respekt: 320,5Respekt: 320,5

Je?li dobrze zrozumia?em to tam w skrypcie powinno by? SELECT zamiast INSERT, p??niej pobierasz wyniki funkcja:

Więcej informacji znajdziesz w Wikipedii MTA:

dbPoll

W razie problem?w podaj db3

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-28, 22:59


2002kondzior







Wiek: 27
Na forum: 3835 dni
Posty: 36

Piwa: 6

Respekt: 70

"dbn69" napisał/a:

Je?li dobrze zrozumia?em to tam w skrypcie powinno by? SELECT zamiast INSERT, p??niej pobierasz wyniki funkcja:

Więcej informacji znajdziesz w Wikipedii MTA:

dbPoll

W razie problem?w podaj db3

A po co tak kombinowa?? result, num, id = export... po wys?aniu do mysql inserta zwraca result, num(rows) oraz id. (oczywi?cie zwraca id tego rekordu kt?ry w?a?nie zosta? dodany)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-29, 02:09


saller123

Dopiero się ucze ;)






Wiek: 25
Na forum: 4680 dni
Posty: 95
Nick w MP: Davitek

Piwa: 212

Respekt: 70

W skrypcie mysql mam tak:
local connection nil
addEventHandler("onResourceStart",resourceRoot,function(resource)
        connection dbConnect("mysql","dbname=******;host=*******;port=3306;","*****","*******")
        if connection then
            outputDebugString("Polaczono z baza danych!")
            return true
        else
            outputDebugString("Blad podczas laczenia sie z baza danych!")
            return false
        end
    end
)

function _Query(...) 
    if not {...} then return end 
        local query dbQuery(connection, ...) 
        local resultnum_affected_rowslast_insert_id dbPoll(query, -1) 
    return resultnum_affected_rowslast_insert_id
end

function _QuerySingle(str,...)
    if connection then
        local result _Query(str,...)
        if type(result) == 'table' then
            return result[1]
        end
    else
        return false
    end
end

function _Exec(str,...)
    if connection then
        local query dbExec(connection,str,...)
        return query
    else
        return false
    end
end


W skrypcie do tworzenia pojazdu mam tak:
function StworzPojazd(plr,model,posx,posy,posz,rotx,roty,rotz)

local ownerid getElementData(plr,"sid")

local resultnumid exports.mysql:_Query("insert into pojazdy(model,ownerid) values (?,?)",model,ownerid)
if result then
local vehicle createVehicle(modelposxposyposzrotxrotyrotz)
if vehicle then
warpPedIntoVehicle(plrvehicle)
setElementData(vehicle"vehicle:id"idv)
setElementData(vehicle"vehicle:milage"0)
setElementData(vehicle"vehicle:fuel"100)
local name getPlayerName(plr)
setElementData(vehicle"ostkierowca"name)
end
end
end


Podpis
Jeżeli ci pomogłem, postaw piwerko :D
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-29, 06:42


neku^







Wiek: 24
Na forum: 3521 dni
Posty: 461
Nick w MP: neku^

Piwa: 1186

Respekt: 320,5
Respekt: 320,5Respekt: 320,5Respekt: 320,5


setElementData(vehicle"vehicle:id"idv)

Zamie? na:

setElementData(vehicle"vehicle:id"id)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-29, 14:38


saller123

Dopiero się ucze ;)






Wiek: 25
Na forum: 4680 dni
Posty: 95
Nick w MP: Davitek

Piwa: 212

Respekt: 70

"dbn69" napisał/a:


setElementData(vehicle"vehicle:id"idv)

Zamie? na:

setElementData(vehicle"vehicle:id"id)


Nawet tego nie zauwa?y?em..
Dziena tylko stworzy? si? kolejny problem..
Zrobi?em komend? na zapisywanie pojazdu lecz nie chce go zapisa? i na dodatek nic w db3..

Funkcja:
function ZapiszPojazd(vehicle)

local panelstates={}
local id=getElementData(vehicle"vehicle:id")
local model=getElementModel(vehicle)
local health=getElementHealth(vehicle)
local x,y,z=getElementPosition(vehicle)
local rx,ry,rz=getElementRotation(vehicle)
local id=getElementData(vehicle,"vehicle:id")
local fuel=getElementData(vehicle,"vehicle:fuel")
local mileage=getElementData(vehicle,"vehicle:mileage")
local c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12=getVehicleColor(vehicletrue)
local ownerid=getElementData(vehicle,"vehicle:ownerid")
local h1,h2,h3=getVehicleHeadLightColor(vehicle)
local paintjob=getVehiclePaintjob(vehicle)
local ostkierowca=getElementData(vehicle"vehicle:ostkierowca") or " "
local frozenisElementFrozen(vehicle) and or 0
local mk1 getElementData(vehicle"vehicle:mk1")
local mk2 getElementData(vehicle"vehicle:mk2")
local mk3 getElementData(vehicle"vehicle:mk3")
local rh1 getElementData(vehicle"vehicle:rh1")

for i=0,do table.insert(panelstatesgetVehiclePanelState(vehicle,i)) end
panelstates=table.concat(panelstates,",")
upgrades=getVehicleUpgrades(vehicle)
if not upgrades then upgrades={} end
upgrades=table.concat(upgrades",")
exports.mysql:_Exec("UPDATE pojazdy SET ownerid=?, frozen=?, health=?, fuel=?, milage=?, ostkierowca=?, posx=?, posy=?, posz=?, rotx=?, roty=?, rotz=?, color='%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d', panelstates=?, headlights='%d,%d,%d', tuning=?, mk1=?, mk2=?, mk3=?, rh1=?, paintjob=? where id=?",owneridfrozenhealthfuelmilageostkierowcax,y,z,rx,ry,rz,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,panelstates,h1,h2,h3tuningmk1mk2mk3rh1paintjobid)

end


Komenda:
function zapisz playerSourcecommandName )
    local theVehicle getPedOccupiedVehicle playerSource )
    if theVehicle then
        ZapiszPojazd(theVehicle)
    end
end
addCommandHandler "zapisz"zapisz )


Podpis
Jeżeli ci pomogłem, postaw piwerko :D
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-30, 23:36


2002kondzior







Wiek: 27
Na forum: 3835 dni
Posty: 36

Piwa: 6

Respekt: 70

"saller123" napisał/a:

"dbn69" napisał/a:


setElementData(vehicle"vehicle:id"idv)

Zamie? na:

setElementData(vehicle"vehicle:id"id)


Nawet tego nie zauwa?y?em..
Dziena tylko stworzy? si? kolejny problem..
Zrobi?em komend? na zapisywanie pojazdu lecz nie chce go zapisa? i na dodatek nic w db3..

Funkcja:
function ZapiszPojazd(vehicle)

local panelstates={}
local id=getElementData(vehicle"vehicle:id")
local model=getElementModel(vehicle)
local health=getElementHealth(vehicle)
local x,y,z=getElementPosition(vehicle)
local rx,ry,rz=getElementRotation(vehicle)
local id=getElementData(vehicle,"vehicle:id")
local fuel=getElementData(vehicle,"vehicle:fuel")
local mileage=getElementData(vehicle,"vehicle:mileage")
local c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12=getVehicleColor(vehicletrue)
local ownerid=getElementData(vehicle,"vehicle:ownerid")
local h1,h2,h3=getVehicleHeadLightColor(vehicle)
local paintjob=getVehiclePaintjob(vehicle)
local ostkierowca=getElementData(vehicle"vehicle:ostkierowca") or " "
local frozenisElementFrozen(vehicle) and or 0
local mk1 getElementData(vehicle"vehicle:mk1")
local mk2 getElementData(vehicle"vehicle:mk2")
local mk3 getElementData(vehicle"vehicle:mk3")
local rh1 getElementData(vehicle"vehicle:rh1")

for i=0,do table.insert(panelstatesgetVehiclePanelState(vehicle,i)) end
panelstates=table.concat(panelstates,",")
upgrades=getVehicleUpgrades(vehicle)
if not upgrades then upgrades={} end
upgrades=table.concat(upgrades",")
exports.mysql:_Exec("UPDATE pojazdy SET ownerid=?, frozen=?, health=?, fuel=?, milage=?, ostkierowca=?, posx=?, posy=?, posz=?, rotx=?, roty=?, rotz=?, color='%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d', panelstates=?, headlights='%d,%d,%d', tuning=?, mk1=?, mk2=?, mk3=?, rh1=?, paintjob=? where id=?",owneridfrozenhealthfuelmilageostkierowcax,y,z,rx,ry,rz,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,panelstates,h1,h2,h3tuningmk1mk2mk3rh1paintjobid)

end


Komenda:
function zapisz playerSourcecommandName )
    local theVehicle getPedOccupiedVehicle playerSource )
    if theVehicle then
        ZapiszPojazd(theVehicle)
    end
end
addCommandHandler "zapisz"zapisz )

Kolego w linijce z exportem pomiesza?e? string.format (np. %d) z normalnym mysql dlatego najlepiej dla ciebie b?dzie jak poczytasz troch? o string.format na wiki.

Postaw piwo autorowi tego posta
 

 
Tagi: pobranie :: quota_iquot :: mysql :: stworzeniu :: rekordu
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






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