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

Wysłany: 2020-12-02, 22:51


Matikmontana

Modern Stories






Wiek: 22
Na forum: 2473 dni
Posty: 423
Nick w MP: Mazeusz*

Piwa: 1015

Respekt: 130
Respekt: 130

Ostrzeżeń: 60%
Witam, kombinuje z premiami lecz napotka?em ma?y probliemix z tym ?e je?li nie ma w bazie danych pracy to nie wyp?aca forsy, a je?li jest to pi?knie wszystko ?miga. By? bym wdzi?czny za pomoc :)
function odbierzWyplatePremia(praca,wyplata,element)
    local resulted=exports["pystories-db"]:dbGet("SELECT * FROM ms_prace_premie WHERE nazwa=?"praca)
    for _,v in pairs(resulted) do
    if v.nazwa == praca then
        local sid=getElementData(element,"player:sid")
        local pieniadz wyplata*(v.mnoznik.."."..v.ile)
        outputChatBox("Otrzymujesz "..wyplata.."PLN + "..v.ile.."% premii.",element)
        givePlayerMoney (elementpieniadz) 
        exports["pystories-db"]:dbSet("INSERT INTO ms_logi_praca SET uid=?, nick=?, otrzymal=?, aktualnagotowka=?, Nazwa=?"sidgetPlayerName(element), wyplatagetPlayerMoney(element), praca)
        triggerEvent("admin:logs"root"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN")
        triggerEvent("admin:addText"resourceRoot"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN")
        return
    else
        local sid=getElementData(element,"player:sid")
        local pieniadz wyplata
        givePlayerMoney (elementpieniadz) 
        exports["pystories-db"]:dbSet("INSERT INTO ms_logi_praca SET uid=?, nick=?, otrzymal=?, aktualnagotowka=?, Nazwa=?"sidgetPlayerName(element), wyplatagetPlayerMoney(element), praca)
        triggerEvent("admin:logs"root"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN")
        triggerEvent("admin:addText"resourceRoot"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN") 
        return
        end
    end
end
addEvent("prace:wyplata_all",true)
addEventHandler("prace:wyplata_all",getRootElement(),odbierzWyplatePremia)


Podpis


Modern Stories
Discord
https://discord.gg/MRJSYq8
Forum
https://msmta.pl
Panel Gracza
https://panel.msmta.pl
Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-12-03, 08:15


Wilq







Wiek: 24
Na forum: 4428 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Pod zmienn? "resulted" masz tabel?. Na pocz?tku przed p?tl? sprawdzaj, czy ta tabela ma wi?cej ni? 1 wiersz:

if #resulted > 0 then


Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-12-03, 09:24


Matikmontana

Modern Stories






Wiek: 22
Na forum: 2473 dni
Posty: 423
Nick w MP: Mazeusz*

Piwa: 1015

Respekt: 130
Respekt: 130

Ostrzeżeń: 60%
Nadal nie dzia?a. Co? jeszcze trzeba doda? ?

function odbierzWyplatePremia(praca,wyplata,element)
    local resulted=exports["pystories-db"]:dbGet("SELECT * FROM ms_prace_premie WHERE nazwa=?"praca)
    if #resulted > 0 then
    for _,v in pairs(resulted) do
    if v.nazwa == praca then
        local sid=getElementData(element,"player:sid")
        local pieniadz wyplata*(v.mnoznik.."."..v.ile)
        outputChatBox("Otrzymujesz "..string.format("%01d",wyplata).."PLN + "..v.ile.."% premii.",element)
        givePlayerMoney (elementpieniadz) 
        exports["pystories-db"]:dbSet("INSERT INTO ms_logi_praca SET uid=?, nick=?, otrzymal=?, aktualnagotowka=?, Nazwa=?"sidgetPlayerName(element), wyplatagetPlayerMoney(element), praca)
        triggerEvent("admin:logs"root"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN")
        triggerEvent("admin:addText"resourceRoot"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN")
        return
    else
        local sid=getElementData(element,"player:sid")
        local pieniadz wyplata
        outputChatBox("Otrzymujesz "..string.format("%01d",wyplata).."PLN",element)
        givePlayerMoney (elementpieniadz) 
        exports["pystories-db"]:dbSet("INSERT INTO ms_logi_praca SET uid=?, nick=?, otrzymal=?, aktualnagotowka=?, Nazwa=?"sidgetPlayerName(element), wyplatagetPlayerMoney(element), praca)
        triggerEvent("admin:logs"root"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN")
        triggerEvent("admin:addText"resourceRoot"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN") 
        return
        end
    end
    end
end


Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-12-03, 09:47


Wilq







Wiek: 24
Na forum: 4428 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

No ale wtedy kiedy nie ma warto?ci w tabeli to musisz robi? ten kod co masz pod else - bo wtedy nie ma danych w tabeli. Najlepiej do zapytania wykorzysta? "LIMIT 1", ?eby mie? pewno??, ?e tylko jeden wyniki b?dzie.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-12-03, 10:03


Matikmontana

Modern Stories






Wiek: 22
Na forum: 2473 dni
Posty: 423
Nick w MP: Mazeusz*

Piwa: 1015

Respekt: 130
Respekt: 130

Ostrzeżeń: 60%
Jak ma wygl?da? ten "LIMIT 1"

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-12-03, 10:05


Wilq







Wiek: 24
Na forum: 4428 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-12-03, 10:08


Matikmontana

Modern Stories






Wiek: 22
Na forum: 2473 dni
Posty: 423
Nick w MP: Mazeusz*

Piwa: 1015

Respekt: 130
Respekt: 130

Ostrzeżeń: 60%
O to chodzi ?
local resulted=exports["pystories-db"]:dbGet("SELECT * FROM ms_prace_premie WHERE nazwa=? LIMIT 1;"praca)


A pod else co? trzeba dopisa?, bo po dodaniu LIMIT 1 nadal nie dziala :P

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-12-03, 10:13


Wilq







Wiek: 24
Na forum: 4428 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

No to wypada do-studiowa? co oznacza ta funkcja LIMIT.

Kod w warunku "if v.nazwa == praca then" spod "else" musisz wstawi? to do warunku ze sprawdzaniem ilo?ci element?w w tabeli.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-12-03, 10:25


Matikmontana

Modern Stories






Wiek: 22
Na forum: 2473 dni
Posty: 423
Nick w MP: Mazeusz*

Piwa: 1015

Respekt: 130
Respekt: 130

Ostrzeżeń: 60%
Czyli to musze przenie?? pod "if #resulted > 0 then" ?
local sid=getElementData(element,"player:sid")
        local pieniadz wyplata
        outputChatBox("Otrzymujesz "..string.format("%01d",wyplata).."PLN",element)
        givePlayerMoney (elementpieniadz) 
        exports["pystories-db"]:dbSet("INSERT INTO ms_logi_praca SET uid=?, nick=?, otrzymal=?, aktualnagotowka=?, Nazwa=?"sidgetPlayerName(element), wyplatagetPlayerMoney(element), praca)
        triggerEvent("admin:logs"root"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN")
        triggerEvent("admin:addText"resourceRoot"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN") 
        return
        end


Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-12-03, 10:52


Wilq







Wiek: 24
Na forum: 4428 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Tak

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-12-03, 20:25


Matikmontana

Modern Stories






Wiek: 22
Na forum: 2473 dni
Posty: 423
Nick w MP: Mazeusz*

Piwa: 1015

Respekt: 130
Respekt: 130

Ostrzeżeń: 60%
Nie rozumiem przenios?em pod "if #resulted > 0 then" tylko teraz nie czyta "for _,v in pairs(resulted) do"

db3

unexpected symbol near 'for'

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-12-03, 21:02


kamison

Przyszły programista .lua






Wiek: 25
Na forum: 3302 dni
Posty: 391
Nick w MP: kamison

Piwa: 594

Respekt: 205,3
Respekt: 205,3Respekt: 205,3

"Matikmontana" napisał/a:

Nie rozumiem przenios?em pod "if #resulted > 0 then" tylko teraz nie czyta "for _,v in pairs(resulted) do"

db3

unexpected symbol near 'for'


sprawd? czy przed t? petl? przypadkowo nie dopisa?e? jakiego? znaku, liczby - prawdopodobnie missclicka zrobi?e?

Podpis
Coś tam kiedyś robiłem.

DC: kamison_.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-12-03, 21:18


Matikmontana

Modern Stories






Wiek: 22
Na forum: 2473 dni
Posty: 423
Nick w MP: Mazeusz*

Piwa: 1015

Respekt: 130
Respekt: 130

Ostrzeżeń: 60%
Zrobi?em tak brak b??d?w w db aczkolwiek nadal nie wyp?aca pieni??k?w je?li nie ma wpisanych rekord?w w baze
function odbierzWyplatePremia(praca,wyplata,element)
    local resulted=exports["pystories-db"]:dbGet("SELECT * FROM ms_prace_premie WHERE nazwa=? LIMIT 1;"praca)
    if #resulted > 0 then
    local sid=getElementData(element,"player:sid")
        local pieniadz wyplata
        outputChatBox("Otrzymujesz "..string.format("%01d",wyplata).."PLN",element)
        givePlayerMoney (elementpieniadz) 
        exports["pystories-db"]:dbSet("INSERT INTO ms_logi_praca SET uid=?, nick=?, otrzymal=?, aktualnagotowka=?, Nazwa=?"sidgetPlayerName(element), wyplatagetPlayerMoney(element), praca)
        triggerEvent("admin:logs"root"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN")
        triggerEvent("admin:addText"resourceRoot"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN") 
        return
    end
    for _,v in pairs(resulted) do
    if v.nazwa == praca then
        local sid=getElementData(element,"player:sid")
        local pieniadz wyplata*(v.mnoznik.."."..v.ile)
        outputChatBox("Otrzymujesz "..string.format("%01d",wyplata).."PLN + "..v.ile.."% premii.",element)
        givePlayerMoney (elementpieniadz) 
        exports["pystories-db"]:dbSet("INSERT INTO ms_logi_praca SET uid=?, nick=?, otrzymal=?, aktualnagotowka=?, Nazwa=?"sidgetPlayerName(element), wyplatagetPlayerMoney(element), praca)
        triggerEvent("admin:logs"root"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN")
        triggerEvent("admin:addText"resourceRoot"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN")
        return
    --else 
        
    end
    end
end
addEvent("prace:wyplata_all",true)
addEventHandler("prace:wyplata_all",getRootElement(),odbierzWyplatePremia)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-12-03, 23:20


EnoNeK







Wiek: 21
Na forum: 3287 dni
Posty: 39
Nick w MP: EnoNeK

Piwa: 54

Respekt: 200
Respekt: 200Respekt: 200

function odbierzWyplatePremia(praca,wyplata,element)
    local resulted=exports["pystories-db"]:dbGet("SELECT * FROM ms_prace_premie WHERE nazwa=? LIMIT 1;"praca)
    if #resulted > 0 then
    local sid=getElementData(element,"player:sid")
        local pieniadz wyplata
        outputChatBox("Otrzymujesz "..string.format("%01d",wyplata).."PLN",element)
        givePlayerMoney (elementpieniadz) 
        exports["pystories-db"]:dbSet("INSERT INTO ms_logi_praca SET uid=?, nick=?, otrzymal=?, aktualnagotowka=?, Nazwa=?"sidgetPlayerName(element), wyplatagetPlayerMoney(element), praca)
        triggerEvent("admin:logs"root"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN")
        triggerEvent("admin:addText"resourceRoot"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN") 
    end
    for _,v in pairs(resulted) do
    if v.nazwa == praca then
        local sid=getElementData(element,"player:sid")
        local pieniadz wyplata*(v.mnoznik.."."..v.ile)
        outputChatBox("Otrzymujesz "..string.format("%01d",wyplata).."PLN + "..v.ile.."% premii.",element)
        givePlayerMoney (elementpieniadz) 
        exports["pystories-db"]:dbSet("INSERT INTO ms_logi_praca SET uid=?, nick=?, otrzymal=?, aktualnagotowka=?, Nazwa=?"sidgetPlayerName(element), wyplatagetPlayerMoney(element), praca)
        triggerEvent("admin:logs"root"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN")
        triggerEvent("admin:addText"resourceRoot"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN")
        return
    --else 
        
    end
    end
end
addEvent("prace:wyplata_all",true)
addEventHandler("prace:wyplata_all",getRootElement(),odbierzWyplatePremia)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-12-04, 00:43


Matikmontana

Modern Stories






Wiek: 22
Na forum: 2473 dni
Posty: 423
Nick w MP: Mazeusz*

Piwa: 1015

Respekt: 130
Respekt: 130

Ostrzeżeń: 60%
Dzi?ki wszystkim za pomoc ko?cowy skrypt wygl?da tak i chyba dzia?a. (Testowa?em na 2 pracach to dzia?a? :P )

function odbierzWyplatePremia(praca,wyplata,element)
    local resulted=exports["pystories-db"]:dbGet("SELECT * FROM ms_prace_premie WHERE nazwa=? LIMIT 1;"praca)
    outputChatBox(#resulted,element)
    if #resulted == 0 then
        local sid=getElementData(element,"player:sid")
        local pieniadz wyplata
        outputChatBox("Otrzymujesz "..string.format("%01d",wyplata).."PLN",element)
        givePlayerMoney (elementpieniadz) 
        exports["pystories-db"]:dbSet("INSERT INTO ms_logi_praca SET uid=?, nick=?, otrzymal=?, aktualnagotowka=?, Nazwa=?"sidgetPlayerName(element), wyplatagetPlayerMoney(element), praca)
        triggerEvent("admin:logs"root"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN")
        triggerEvent("admin:addText"resourceRoot"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN") 
    end
    for _,v in pairs(resulted) do
    if v.nazwa == praca then
        local sid=getElementData(element,"player:sid")
        local pieniadz wyplata*(v.mnoznik.."."..v.ile)
        outputChatBox("Otrzymujesz "..string.format("%01d",wyplata).."PLN + "..v.ile.."% premii.",element)
        givePlayerMoney (elementpieniadz) 
        exports["pystories-db"]:dbSet("INSERT INTO ms_logi_praca SET uid=?, nick=?, otrzymal=?, aktualnagotowka=?, Nazwa=?"sidgetPlayerName(element), wyplatagetPlayerMoney(element), praca)
        triggerEvent("admin:logs"root"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN")
        triggerEvent("admin:addText"resourceRoot"(Wyplata: "..praca..") "..getPlayerName(element).." - Otrzymal "..string.format("%01d",pieniadz).." PLN - Aktualna gotowka "..getPlayerMoney(element).." PLN")
        return 
    end
    end
end
addEvent("prace:wyplata_all",true)
addEventHandler("prace:wyplata_all",getRootElement(),odbierzWyplatePremia)


Postaw piwo autorowi tego posta
 

 
Tagi: oraz :: else
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






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