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

Wysłany: 2018-08-22, 17:34


Mikołajj







Wiek: 22
Na forum: 2885 dni
Posty: 303
Nick w MP: Mikołaj

Piwa: 132

Respekt: 91

Witam, ostatnio zrobi?em "jaki? skrypt", kt?ry wymaga mysql, ale nie wiem jak go testowa?. Mo?e to zabrzmie? g?upio, lecz jak wida?. Dok?adniej chodzi mi to, ?e jest na serwerze jeden skrypt + po??czenie z baz?. Chcia?bym zrobi? jaki? zapis elementdat do mysql i odwrotnie po wej?ciu/wyj?ciu, aczkolwiek nie wiem jak si? do tego zabra?.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-08-22, 20:29


Kalizman







Wiek: 23
Na forum: 3651 dni
Posty: 1394

Piwa: 4619

Respekt: 358,8
Respekt: 358,8Respekt: 358,8Respekt: 358,8Respekt: 358,8

Najlepiej zajrzyj to paczek np. ogrpg czy ownworld czy nawet innych. Tam znajdziesz w zasobie od logowania na serwer zapis i odczyt takich rzeczy z bazy danych, aczkolwiek postaram si? troch? wyja?ni? po kr?tce.

Nazwa funkcji eksportowanej z zasobu w kt?rej zosta?o nawi?zane po??czenie z baz? nazywam wykonaj, jako i? to tylko jedna funkcja w po??czeniu mysql w gm newMode czy NewPlace czy tam innych gm, to ju? zale?y od Ciebie jak masz j? nazwan?.


--dodaje nowlinijk? do podanej tabeli w mysql i ustawia nick
--nazwa_tabeli_mysql uzytkownicy
exports["polaczenie_z_mysql"]:wykonaj("INSERT INTO uzytkownicy SET nick=?"getPlayerName(player))

exports["polaczenie_z_mysql"]:wykonaj("INSERT INTO uzytkownicy SET nick=?"getPlayerName(player)) --dodaje nowy rekord do tabeli

local result exports["polaczenie_z_mysql"]:wykonaj("SELECT * FROM uzytkownicy WHERE nick=?"getPlayerName(player)) --szuka rekordu w bazie danych po nicku
if #result == 1 then --je?eli znalaz?
    setElementData(player"prawko"result[1].prawojazdy) --trzeci arg czyli "result[1].costam""costam" nazwa kolumny w mysql kt?rchcesz za?adowadla tego gracza
else
    outputChatBox("Wyst?pi? b??d z wczytaniem"player)
end

--aktualizuje informacje o graczu (np mozesz tego uzyc w evencie onPlayerQuit)
local prawko getElementData(player"prawko") --pobieram telement-dati aktualizujjw mysql (w razie zmiany np warto?ci tej element-daty)
exports["polaczenie_z_mysql"]:wykonaj("UPDATE uzytkownicy SET prawko=?"prawko)


W razie problem?w, pisz.

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
Mikołajj
Wysłany: 2018-08-22, 20:40


Mikołajj







Wiek: 22
Na forum: 2885 dni
Posty: 303
Nick w MP: Mikołaj

Piwa: 132

Respekt: 91

"Kalizman" napisał/a:

Najlepiej zajrzyj to paczek np. ogrpg czy ownworld czy nawet innych. Tam znajdziesz w zasobie od logowania na serwer zapis i odczyt takich rzeczy z bazy danych, aczkolwiek postaram si? troch? wyja?ni? po kr?tce.

Nazwa funkcji eksportowanej z zasobu w kt?rej zosta?o nawi?zane po??czenie z baz? nazywam wykonaj, jako i? to tylko jedna funkcja w po??czeniu mysql w gm newMode czy NewPlace czy tam innych gm, to ju? zale?y od Ciebie jak masz j? nazwan?.


--dodaje nowlinijk? do podanej tabeli w mysql i ustawia nick
--nazwa_tabeli_mysql uzytkownicy
exports["polaczenie_z_mysql"]:wykonaj("INSERT INTO uzytkownicy SET nick=?"getPlayerName(player))

exports["polaczenie_z_mysql"]:wykonaj("INSERT INTO uzytkownicy SET nick=?"getPlayerName(player)) --dodaje nowy rekord do tabeli

local result exports["polaczenie_z_mysql"]:wykonaj("SELECT * FROM uzytkownicy WHERE nick=?"getPlayerName(player)) --szuka rekordu w bazie danych po nicku
if #result == 1 then --je?eli znalaz?
    setElementData(player"prawko"result[1].prawojazdy) --trzeci arg czyli "result[1].costam""costam" nazwa kolumny w mysql kt?rchcesz za?adowadla tego gracza
else
    outputChatBox("Wyst?pi? b??d z wczytaniem"player)
end

--aktualizuje informacje o graczu (np mozesz tego uzyc w evencie onPlayerQuit)
local prawko getElementData(player"prawko") --pobieram telement-dati aktualizujjw mysql (w razie zmiany np warto?ci tej element-daty)
exports["polaczenie_z_mysql"]:wykonaj("UPDATE uzytkownicy SET prawko=?"prawko)


W razie problem?w, pisz.

Dzi?ki za pomoc, lecz zastanawiam si? jeszcze czy mo?na zrobi? "wczytywanie" elementdat, tzn. zrobi? to pod event onPlayerJoin?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-08-22, 21:02


Kalizman







Wiek: 23
Na forum: 3651 dni
Posty: 1394

Piwa: 4619

Respekt: 358,8
Respekt: 358,8Respekt: 358,8Respekt: 358,8Respekt: 358,8

ST4GE, jasne ?e si? tak da.
poda?em przyk?ad ale podam jaki? taki prosty:

addEventHandler("onPlayerJoin"root,
    function()
        --szukam gracza w tabeli "uzytkownicy" po nicku
        local result exports["polaczenie_z_mysql"]:wykonaj("SELECT * FROM uzytkownicy WHERE nick=?"getPlayerName(source))
        if #result == 1 then
            setElementData(source"kasa"result[1].pieniadze)
            setElementModel(sourceresult[1].skin)
        else
            outputChatBox("wyst?pi? b??d z wczytaniem danych"source)
        end
    end
)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-08-22, 21:31


Mikołajj







Wiek: 22
Na forum: 2885 dni
Posty: 303
Nick w MP: Mikołaj

Piwa: 132

Respekt: 91

"Kalizman" napisał/a:

ST4GE, jasne ?e si? tak da.
poda?em przyk?ad ale podam jaki? taki prosty:

addEventHandler("onPlayerJoin"root,
    function()
        --szukam gracza w tabeli "uzytkownicy" po nicku
        local result exports["polaczenie_z_mysql"]:wykonaj("SELECT * FROM uzytkownicy WHERE nick=?"getPlayerName(source))
        if #result == 1 then
            setElementData(source"kasa"result[1].pieniadze)
            setElementModel(sourceresult[1].skin)
        else
            outputChatBox("wyst?pi? b??d z wczytaniem danych"source)
        end
    end
)


Dzi?ki za pomoc, mo?na zamkn??.

Postaw piwo autorowi tego posta
 

 
Tagi: zapis :: elemendta/mysql
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