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

Wysłany: 2019-04-29, 20:08


NorbiTTT

Nbi#1824






Wiek: 27
Na forum: 3207 dni
Posty: 193
Nick w MP: Nbi

Piwa: 698

Respekt: 60

Witam, przychodze z pytaniem bo nie potrafie tego naprawic gdy chce wejsc w interakcje z bankomatem pisze ze musze bys zarejestrowany (wszystko dobrze podpiete) w debugscript'cie wyskakuje takie co?:
https://imgur.com/a/jpFKYHC

Prosz? o pomoc :(

EDIT1: Naprawi?em ten error czerwony, wystarczy?o zmienic w linicjie z UID>SID, ale teraz problem jest taki: WARNING: [pystories]/[skrypty]/DB2/sql.lua:37: Bad argument @ 'dbQuery' [Expected db-connection at argument 1, got boolean]

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 6 piw(a):
uwek, McDarf5456, ZombieOne, gomBka, Mallboro, EnoDu
Wysłany: 2019-04-29, 21:12


Wilq







Wiek: 24
Na forum: 4428 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Funkcja dbQuery nie mo?e si? wykona?, poniewa? w pierwszym argumencie nie zosta?o uwzgl?dnione prawid?owe po??czenie z baz? danych.

Sprawd?, czy skrypt w kt?rym wykonujesz powy?sz? funkcj? ??czy si? poprawnie z baz?.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-04-29, 21:33


NorbiTTT

Nbi#1824






Wiek: 27
Na forum: 3207 dni
Posty: 193
Nick w MP: Nbi

Piwa: 698

Respekt: 60

Wszystko jest podpi?te prawid?owo ;/

[ Dodano: 2019-04-29, 21:34 ]
zmieni?em host na "localhost" moze to pomoze ale dopiero zaraz zrobie restart bo teraz gracze sa

Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-04-29, 21:40


Wilq







Wiek: 24
Na forum: 4428 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

localhost? Je?li masz baz? danych na swoim komputerze to okej.

Przy dzia?aniach w bazie danych zawsze korzystasz ze skryptu DB2? Poka??linijk? z bankomatu.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-04-29, 21:45


NorbiTTT

Nbi#1824






Wiek: 27
Na forum: 3207 dni
Posty: 193
Nick w MP: Nbi

Piwa: 698

Respekt: 60

--[[
@author Lukasz Biegaj <wielebny@bestplay.pl>
@copyright 2011-2013 Lukasz Biegaj <wielebny@bestplay.pl>
@license Dual GPLv2/MIT
@todo przerobic z zasobu DB na DB2
]]--




addEvent("onPlayerRequestATMInfo"true)
addEventHandler("onPlayerRequestATMInfo"resourceRoot, function()
    local dbid=getElementData(client,"player:sid")
    if not dbid then
        triggerClientEvent(client,"doFillATMInfo"resourceRootfalse)
        return
    end
    local sr=exports["DB2"]:pobierzWyniki("SELECT bank_money FROM pystories_users WHERE id="..(tonumber(dbid) or 0).." LIMIT 1")
    if not sr or not sr.bank_money then
        triggerClientEvent(client,"doFillATMInfo"resourceRootfalse)
        return
    end
    triggerClientEvent(client,"doFillATMInfo"resourceRoottruetonumber(sr.bank_money))
end)

addEvent("doATMOperation"true)
addEventHandler("doATMOperation"resourceRoot, function(kwota)
    -- kwota dodatnia wplata
    -- kwota ujemna wyplata
    if kwota>and kwota>getPlayerMoney(clientthen return end -- komunikat bledu po stronie klienta
    local dbid=getElementData(client,"player:sid")
    if not dbid then return end -- nie powinno sie zdarzyc
    if kwota>0 then
        if getPlayerMoney(client)<kwota then return end
        takePlayerMoney(clientkwota)
        exports["DB2"]:zapytanie("UPDATE pystories_users SET bank_money=bank_money+"..(tonumber(kwota) or 0).." WHERE id="..tonumber(dbid).." LIMIT 1")
        --triggerEvent("broadcastCaptionedEvent"clientgetPlayerName(client).." wp?aca pieni?dze do bankomatu"320true)
        outputChatBox("* Wp?aci?e?(a?) pieni?dze do bankomatu."client255,0,0)
    elseif kwota<0 then
        local sr=exports["DB2"]:pobierzWyniki("SELECT `bank_money` FROM `pystories_users` WHERE id="..tonumber(dbid).." LIMIT 1")
        if not sr or not sr.bank_money then return end -- nie opwinno sie wydarzyc
        sr.bank_money=tonumber(sr.bank_money)
        if (sr.bank_money<math.abs(kwota)) then
            outputChatBox("* Nie posiadasz tyle ?rodk?w na koncie !"client255,0,0)
--            triggerClientEvent(client,"onAnnouncement3"root"Nie masz tyle ?rodk?w na koncie!"5)
            return
        end
        outputChatBox("* Wyp?aci?e?(a?) pieni?dze z bankomatu."client255,0,0)
        exports["DB2"]:zapytanie("UPDATE pystories_users SET bank_money=bank_money-"..math.abs(tonumber(kwota)).." WHERE id="..tonumber(dbid).." LIMIT 1")
        givePlayerMoney(clientmath.abs(kwota))
    end
    

end)


Komentarz DsJ3 dodany 2019-04-30, 10:05Następnym razem dodaj załącznik[BBCode] [lua]Kod[./lua] bez kropki
Ostatnio zmieniony przez DsJ3 2019-04-30, 10:05, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-04-29, 21:48


Wilq







Wiek: 24
Na forum: 4428 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

A zawarto?? DB2? Zamiast swoich danych wstaw "xXx".

Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-04-29, 21:49


NorbiTTT

Nbi#1824






Wiek: 27
Na forum: 3207 dni
Posty: 193
Nick w MP: Nbi

Piwa: 698

Respekt: 60

--[[
Obsluga baz danychinterfejs do bazy MySQL realizowany za pomoca wbudowanych w MTA funkcji db...

@author Lukasz Biegaj <wielebny@bestplay.pl>
@author WUBE <wube@lss-rp.pl>
@copyright 2011-2013 Lukasz Biegaj <wielebny@bestplay.pl>
@license Dual GPLv2/MIT
@package MTA-XyzzyRP
@link https://github.com/lpiob/MTA-XyzzyRP GitHub
]]--

local SQL

local function connect()
    -- w ponizszej linii uzupelnij dane autoryzacji
    SQL dbConnect("mysql""dbname=xxxx;host=localhost""xxx","xxx","share=1")
    if (not SQLthen
        outputServerLog("BRAK POLACZENIA Z BAZA DANYCH!")
    else
        zapytanie("SET NAMES utf8;")
    end

end

addEventHandler("onResourceStart",resourceRootconnect)

function pobierzTabeleWynikow(...)
    local h=dbQuery(SQL,...)
    if (not hthen 
        return nil
    end
    local rows dbPoll(h, -1)
    return rows
end

function pobierzWyniki(...)
    local h=dbQuery(SQL,...)
    if (not hthen 
        return nil
    end
    local rows dbPoll(h, -1)
    if not rows then return nil end
    return rows[1]
end

function zapytanie(...)
    local h=dbQuery(SQL,...)
    local result,numrows=dbPoll(h,-1)
    return numrows
end

--[[
function insertID()
    return mysql_insert_id(SQL)
end

function affectedRows()
    return mysql_affected_rows(SQL)
end
]]--

function fetchRows(query)
    local result=mysql_query(SQL,query)
    if (not resultthen return nil end
    local tabela={}

    while true do
        local row mysql_fetch_row(result)
        if (not rowthen break end
        table.insert(tabela,row)
    end
    mysql_free_result(result)
    return tabela
end


Ostatnio zmieniony przez DsJ3 2019-04-30, 10:06, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-04-29, 21:54


Mezo.

Mod-Team






Wiek: 24
Na forum: 3211 dni
Posty: 548
Nick w MP: Mezo

Piwa: 6070

Respekt: 517
Respekt: 517

Spr?buj tak, jak nie zadziala to dzia?amy dalej ;)

 --[[ 
Obsluga baz danychinterfejs do bazy MySQL realizowany za pomoca wbudowanych w MTA funkcji db... 

@author Lukasz Biegaj <wielebny@bestplay.pl> 
@author WUBE <wube@lss-rp.pl> 
@copyright 2011-2013 Lukasz Biegaj <wielebny@bestplay.pl> 
@license Dual GPLv2/MIT 
@package MTA-XyzzyRP 
@link https://github.com/lpiob/MTA-XyzzyRP GitHub 
]]-- 

local SQL 

local function connect() 
-- w ponizszej linii uzupelnij dane autoryzacji 
SQL=dbConnect("mysql""dbname="dbnamenazwa";host="hosttwoj""dbusertwojpasytwoje"share=1")
if (not SQLthen 
outputServerLog("BRAK POLACZENIA Z BAZA DANYCH!") 
else 
zapytanie("SET NAMES utf8;"end 

end 

addEventHandler("onResourceStart",resourceRootconnect) 

function pobierzTabeleWynikow(...) 
local h=dbQuery(SQL,...) 
if (not hthen 
return nil 
end 
local rows dbPoll(h, -1) 
return rows 
end 

function pobierzWyniki(...) 
local h=dbQuery(SQL,...) 
if (not hthen 
return nil 
end 
local rows dbPoll(h, -1) 
if not rows then return nil end 
return rows[1end 

function zapytanie(...) 
local h=dbQuery(SQL,...) 
local result,numrows=dbPoll(h,-1) 
return numrows 
end 

--[[ 
function insertID() 
return mysql_insert_id(SQLend 

function affectedRows() 
return mysql_affected_rows(SQLend 
]]-- 

function fetchRows(querylocal result=mysql_query(SQL,query) 
if (not resultthen return nil end 
local tabela={} 

while true do 
local row mysql_fetch_row(result) 
if (not rowthen break end 
table.insert(tabela,rowend 
mysql_free_result(result) 
return tabela 
end 


Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-04-29, 21:55


Wilq







Wiek: 24
Na forum: 4428 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Nie ma powiadomienia "BRAK POLACZENIA Z BAZA DANYCH!" przy starcie tego skryptu?
Pozosta?e skrypty, kt?re wykorzystuj? DB2 dzia?aj? bez problemu?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-04-29, 21:57


NorbiTTT

Nbi#1824






Wiek: 27
Na forum: 3207 dni
Posty: 193
Nick w MP: Nbi

Piwa: 698

Respekt: 60

Wszystko dzia?a idealnie :0 Chwila sprawdze tutaj sposob kolegi

[ Dodano: 2019-04-29, 22:00 ]
Magneticy, nie da si? zalogowac nawet :/

[ Dodano: 2019-04-30, 15:05 ]
Kod:

-[[
function insertID()
return mysql_insert_id(SQL)
end

function affectedRows()
return mysql_affected_rows(SQL)
end
]]--

te nawiasy kwadratowe maja jakis wplyw?

Postaw piwo autorowi tego posta
 

 
Tagi: bankomaty :: pys :: 3.0
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