Wysłany: 2017-04-21, 15:57
koxpl2x22
MAPPER-ALLEREK
Wiek: 23 Na forum: 4556 dni Posty: 375
Nick w MP: ALLEREK
Piwa : 1726
Witam, mam problem z wyci?ganiem danych z SQLite, ucz? si? dopiero LUA i pr?buje ale nie potrafi? tego zrobi?:
local gate = createObject ( 8378 , 2882.5 ,- 246.19999694824 , 11.199999809265 , 0 , 0 , 90 )
function bramacrips ( plr )
if ( getAccount ( data . account )) then
local player = getAccountPlayer ( getAccount ( data . account ))
users [ data . groupName ] = {}
table . insert ( users [ data . groupName ], data . account )
if ( player ) then
moveObject ( gate , 2000 , 2882.5 ,- 246.19999694824 , 4.199999809265 )
end
end
function bramacrips2 ( plr )
if ( getAccount ( data . account )) then
local player = getAccountPlayer ( getAccount ( data . account ))
users [ data . groupName ] = {}
table . insert ( users [ data . groupName ], data . account )
if ( player ) then
moveObject ( gate , 2000 , 2882.5 ,- 246.19999694824 , 11.199999809265 )
end
end
addCommandHandler ( 'otworz' , bramacrips )
addCommandHandler ( 'zamknij' , bramacrips2 )
end
end
(S? na ko?cu dwa endy bo bez tego skrypt si? nie uruchamia?.)
Zamierzam zrobi? bramy pod bazy do grup(DayZ)
Oto skrypcik razem z db:
[CLICK]
Mo?e przy okazji si? czego? naucz?, dzi?ki z g?ry
Ostatnio zmieniony przez Emm 2017-04-22, 02:01, w całości zmieniany 1 raz
Wysłany: 2017-04-22, 13:39
marcin778
Krytyk serwerów MTA
Wiek: 24 Na forum: 4150 dni Posty: 2268
Nick w MP: Marcineg
Piwa : 4662
Opisz co chcesz wyci?gn?? z sqlite. Co do end?w to to si? kupy nie trzym. Musisz zamyka? funkcje, i robisz bajzel w kodzie:
local ? gate = createObject ( 8378 , 2882.5 ,- 246.19999694824 , 11.199999809265 , 0 , 0 , 90 )
function? bramacrips ( plr )
if?( getAccount ( data . account ))? then
???????????? local ? player ?=? getAccountPlayer ( getAccount ( data . account ))
???????????? users [ data . groupName ]?=?{}
???????????? table . insert ( users [ data . groupName ],? data . account )
????????????if?( player )? then
moveObject ( gate , 2000 , 2882.5 ,- 246.19999694824 , 4.199999809265 )
end
end
end
addCommandHandler ( "otworz" , bramacrips )
function? bramacrips2 ( plr )
if?( getAccount ( data . account ))? then
???????????? local ? player ?=? getAccountPlayer ( getAccount ( data . account ))
???????????? users [ data . groupName ]?=?{}
???????????? table . insert ( users [ data . groupName ],? data . account )
????????????if?( player )? then
moveObject ( gate , 2000 , 2882.5 ,- 246.19999694824 , 11.199999809265 )
end
end
end
addCommandHandler ( "zamknij" , bramacrips2 )
Wysłany: 2017-04-22, 16:18
koxpl2x22
MAPPER-ALLEREK
Wiek: 23 Na forum: 4556 dni Posty: 375
Nick w MP: ALLEREK
Piwa : 1726
Wysłany: 2017-04-22, 18:16
marcin778
Krytyk serwerów MTA
Wiek: 24 Na forum: 4150 dni Posty: 2268
Nick w MP: Marcineg
Piwa : 4662
Więcej informacji znajdziesz w Wikipedii MTA: dbQuery
Więcej informacji znajdziesz w Wikipedii MTA: dbPoll
Wysłany: 2017-04-22, 19:20
koxpl2x22
MAPPER-ALLEREK
Wiek: 23 Na forum: 4556 dni Posty: 375
Nick w MP: ALLEREK
Piwa : 1726
"marcin778" napisał/a :Więcej informacji znajdziesz w Wikipedii MTA: dbQuery
Więcej informacji znajdziesz w Wikipedii MTA: dbPoll
Czyta?em o tym ale wog?le tego nie rozumiem - ja lubi? uczy? si? na gotowych skrypt?w
Wysłany: 2017-04-22, 19:48
neku^
Wiek: 24 Na forum: 3522 dni Posty: 461
Nick w MP: neku^
Piwa : 1186
local zapytanie = dbQuery ( zmienna_dbConnect , "SELECT kolumna1, kolumna2 FROM nazwa_tabeli" ) -- to jest tylko przyk ? ad w kolumna1 masz wpisa ? nazw ? kolumny z sqlite , a w miejscu nazwa_tabeli nazwa swojej tabeli .
P??niej dajesz ifa czy gracz jest w odpowiedniej grupie.
Wysłany: 2017-04-22, 20:15
koxpl2x22
MAPPER-ALLEREK
Wiek: 23 Na forum: 4556 dni Posty: 375
Nick w MP: ALLEREK
Piwa : 1726
"dbn69" napisał/a : local zapytanie = dbQuery ( zmienna_dbConnect , "SELECT kolumna1, kolumna2 FROM nazwa_tabeli" ) -- to jest tylko przyk ? ad w kolumna1 masz wpisa ? nazw ? kolumny z sqlite , a w miejscu nazwa_tabeli nazwa swojej tabeli .
P??niej dajesz ifa czy gracz jest w odpowiedniej grupie.
local playerInDayzGroup = dbQuery ( group_dbConnect , "SELECT groupName, FROM groupmember" )
if ( playerInDayzGroup ) and ( playerInDayzGroup )== 'Crips' then
Tak?
I wtedy ca?y kod jest taki:
group = dbConnect ( "sqlite" , ":DayZ/group/database.db" )
if testgroup then
outputDebugString ( "Polaczono-CRIPS." )
else
outputDebugString ( "Nie polaczono-CRIPS." )
end
local playerInDayzGroup = dbQuery ( group_dbConnect , "SELECT groupName, kolumna2 FROM groupmember" )
local gate = createObject ( 8378 , 2882.5 ,- 246.19999694824 , 11.199999809265 , 0 , 0 , 90 )
function bramacrips ( plr )
if ( playerInDayzGroup ) and ( playerInDayzGroup )== 'Crips' then
moveObject ( gate , 2000 , 2882.5 ,- 246.19999694824 , 4.199999809265 )
end
end
function bramacrips2 ( plr )
if ( playerInDayzGroup ) and ( playerInDayzGroup )== 'Crips' then
moveObject ( gate , 2000 , 2882.5 ,- 246.19999694824 , 11.199999809265 )
end
end
addCommandHandler ( 'otworz' , bramacrips )
addCommandHandler ( 'zamknij' , bramacrips2 )
Wysłany: 2017-04-22, 20:27
neku^
Wiek: 24 Na forum: 3522 dni Posty: 461
Nick w MP: neku^
Piwa : 1186
Podaj kod skryptu w kt?rym masz po??czenie z baz? danych( o ile takowy masz), ?le w og?le robisz po??czenie z baza.
Wysłany: 2017-04-22, 20:39
marcin778
Krytyk serwerów MTA
Wiek: 24 Na forum: 4150 dni Posty: 2268
Nick w MP: Marcineg
Piwa : 4662
Nie dbQuery, musisz si? po??czy? z baz? danych
Więcej informacji znajdziesz w Wikipedii MTA: dbConnect
c = dbConnect ( "sqlite" , "plik.db" )
Potem np po wpisaniu komendy robisz zapytanie
local s = dbQuery ( c , "SELECT * FROM nazwa tabeli WHERE jakas kolumna ze dany gracz=?" , zmienna do tej kolumny kt ? r ? ma por ? wnywa ?)
Czyli w twoim przypadku
local s = dbQuery ( c , "SELECT * FROM groupmember WHERE account=?" , np nazwa konta acl )
Teraz pobierasz kolumny/wynik
i sprawdzasz grup?/rank
if r [ 1 ][ 'nazwa kolumny' ] == "cos" then
-- otwieranie / zamykanie bramy
end
czyli w twoim przypadku
if r [ 1 ][ 'groupName' ] == "SAPD" then
-- otwieranie / zamykanie tej bramy
end
sapd to nazwa grupy
Więcej szczegółów
Wystawiono 1 piw(a):koxpl2x22
Wysłany: 2017-04-22, 22:33
koxpl2x22
MAPPER-ALLEREK
Wiek: 23 Na forum: 4556 dni Posty: 375
Nick w MP: ALLEREK
Piwa : 1726
O K*RWA XD Troch? skomplikowane ale spr?buje
c = dbConnect ( "sqlite" , ":DayZ/group/database.db" )
if testgroup then
outputDebugString ( "Polaczono-CRIPS." )
else
outputDebugString ( "Nie polaczono-CRIPS." )
end
--------------------------------------------------------------------------------------------------
local gate = createObject ( 8378 , 2882.5 ,- 246.19999694824 , 11.199999809265 , 0 , 0 , 90 )
function bramacrips ( plr )
local s = dbQuery ( c , "SELECT * FROM groupmember WHERE account=?" , Allerek )
local r = dbPoll ( s , - 1 )
if r [ 1 ][ 'groupName' ] == "CRIPS" then
moveObject ( gate , 2000 , 2882.5 ,- 246.19999694824 , 4.199999809265 )
end
end
addCommandHandler ( 'zamknij' , bramacrips2 )
--------------------------------------------------------------------------------------------------
function bramacrips2 ( plr )
local s = dbQuery ( c , "SELECT * FROM groupmember WHERE account=?" , Allerek )
local r = dbPoll ( s , - 1 )
if r [ 1 ][ 'groupName' ] == "CRIPS" then
moveObject ( gate , 2000 , 2882.5 ,- 246.19999694824 , 11.199999809265 )
end
end
addCommandHandler ( 'otworz' , bramacrips )
?e o tak?
Wysłany: 2017-04-22, 22:37
.RiV
Wiek: 25 Na forum: 3588 dni Posty: 554
Nick w MP: Split
Piwa : 2596
Tak. Taka ma?a rada, ?adnej nie b?dzie r??nicy ale lepiej ?eby Ciebie informowa?o w debugu czy po??czenie jest czy te? nie ma.
if testgroup then
outputDebugString ( "Polaczono-CRIPS." )
else
outputDebugString ( "Nie polaczono-CRIPS." )
end
Zamie? na
if c then
outputDebugString ( "Polaczono-CRIPS." )
else
outputDebugString ( "Nie polaczono-CRIPS." )
end
Podpis
Autor OGRPG, na scenie MTA od 2012 roku.
Użytkownik: 08.08.2016
GTAO Member: 06.02.2017
Support-Team: 17.06.2017 & 01.06.2019 - 18.11.2019
Moderator: 14.01.2018 - 09.08.2018
Więcej szczegółów
Wystawiono 1 piw(a):koxpl2x22
Wysłany: 2017-04-22, 22:47
koxpl2x22
MAPPER-ALLEREK
Wiek: 23 Na forum: 4556 dni Posty: 375
Nick w MP: ALLEREK
Piwa : 1726
Dzi?ki bardzo ^^ zaraz przetestuje
[ Dodano : 2017-04-22, 23:06 ]
Niestety:
http://screenshot.sh/m3CHG1a0JxGOa
[ Dodano : 2017-04-22, 23:11 ]
Chwila a zamiast
local d = dbQuery ( c , "SELECT * FROM groupmember WHERE account=?" , Allerek )
Nie powinno by?
local d = dbQuery ( c , "SELECT * FROM groupmember WHERE groupName=?" , Allerek )
?
Wysłany: 2017-04-22, 23:17
.RiV
Wiek: 25 Na forum: 3588 dni Posty: 554
Nick w MP: Split
Piwa : 2596
Allerek to nick, funkcja czy grupa?
Je?eli nick to zmie? zapytanie na to
local d = dbQuery ( c , "SELECT * FROM groupmember WHERE account=?" , 'Allerek' )
Bo szuka Ci funkcji zamiast stringa.
Podpis
Autor OGRPG, na scenie MTA od 2012 roku.
Użytkownik: 08.08.2016
GTAO Member: 06.02.2017
Support-Team: 17.06.2017 & 01.06.2019 - 18.11.2019
Moderator: 14.01.2018 - 09.08.2018
Wysłany: 2017-04-22, 23:17
koxpl2x22
MAPPER-ALLEREK
Wiek: 23 Na forum: 4556 dni Posty: 375
Nick w MP: ALLEREK
Piwa : 1726
Wysłany: 2017-04-22, 23:44
.RiV
Wiek: 25 Na forum: 3588 dni Posty: 554
Nick w MP: Split
Piwa : 2596
To zr?b to co napisa?em wy?ej w po?cie
Podpis
Autor OGRPG, na scenie MTA od 2012 roku.
Użytkownik: 08.08.2016
GTAO Member: 06.02.2017
Support-Team: 17.06.2017 & 01.06.2019 - 18.11.2019
Moderator: 14.01.2018 - 09.08.2018
Tagi: wyciąganie :: danych :: sqlite
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: