Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.
Wysłany: 2019-10-09, 15:09


kamison







Wiek: 18
Na forum: 877 dni
Posty: 11
Nick w MP: kamison

Piwa: 2

Respekt: 50


Cześć!
Mam zrobiony prosty panel gui z przyciskiem zaloguj i zarejestruj.
Wszystko działa jak należy, komunikaty też się pojawiają, ale chciałbym wraz z:

if(checkName==false)then


i tutaj dodać jeszcze:

dbQueryconnection"INSERT INTO table_name VALUES (?,?,?)""aaa""bbb"10 )
dbFreeqh )

Problem w tym, że nie wiem jak to zrobić, debug pokazuje, że niewłaściwy pierwszy argument, ale nic innego też nie chce przyjąć :/
Jest ktoś w stanie naprowadzić?

 addEvent("takeRegisterPlayer",true)
 addEventHandler("takeRegisterPlayer",root,function(log,pass)
    local checkName getAccount(log)
    
    if(checkName == false)then
        addAccount(logpass)
        outputDebugString("Pomyslnie utworzyles konto") 
        triggerClientEvent("msgNameFree",root)
        elseif(checkName ~= false)then
        outputDebugString("Wprowadź inny login")
        triggerClientEvent("msgNameBusy",root)
        elseif(checkName ~= falsethen
        
        outputDebugString("nie udalo sie stworzyc konta")
        --triggerClientEvent("msgNameBusy",rootwykorzystać z label
        return
        end
        end
        )


Ostatnio zmieniony przez DsJ3 2019-10-09, 16:26, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-10-09, 15:41


Wilq







Wiek: 17
Na forum: 2004 dni
Posty: 1139

Piwa: 235

Respekt: 535,8
Respekt: 535,8


Tam musisz wstawić połączenie z DB.

Więcej informacji znajdziesz w Wikipedii MTA:

dbConnect


A że w kodzie nie zdefiniowales to jest błąd.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-10-09, 16:04


kamison







Wiek: 18
Na forum: 877 dni
Posty: 11
Nick w MP: kamison

Piwa: 2

Respekt: 50


Połączenie z bazą mam , zdefiniowane pod DBConnection, ale i tak nie działa :/

edit: Okej, chyba ogarnąłem gdzie mam zdefiniować.

function connect()
    DBConnection dbConnect"mysql""dbname=test;host=localhost;charset=utf8""""" )
    if (not DBConnectionthen
        outputDebugString("Blad: Blad z połączeniem z baza MYSQL")
    else
        outputDebugString("Sukces: Polaczenie z baza MYSQL udalo sie")
    end
end

addEventHandler("onResourceStart",resourceRootconnect)
 
function query(...)
    local queryHandle dbQuery(DBConnection, ...)
    if (not queryHandlethen
        return nil
    end
    local rows dbPoll(queryHandle, -1)
    return rows
end
 
function execute(...)
    local queryHandle dbQuery(DBConnection, ...)
    local resultnumRows dbPoll(queryHandle, -1)
    return numRows
end

function getDBConnection()
    return DBConnection
end


[ Dodano: 2019-10-09, 20:47 ]
Okej, niby już wszystko działa, ale w mysql nie wyświetlają mi się dane tylko szary paseczek w miejscu gdzie powinno pokazywać login i hasło (...)
    local qh dbQueryconDB"INSERT INTO _konto VALUES (login, password,serial,ip)""aaa""bbb"10 )
   
    if(checkName == false )then
        
        addAccount(logpass)
        
       -- xmlSaveFile(boxSelect)
       -- xmlUnloadFile(boxChild)
        
        outputDebugString("Pomyslnie utworzyles konto") 
        triggerClientEvent("msgNameFree",root)
        triggerClientEvent("takeBoxActive",root)
        dbQueryconDB"INSERT INTO _konto VALUES (login, password,serial,ip)""aaa""bbb"10 )
        


[ Dodano: 2019-10-09, 21:01 ]


[ Dodano: 2019-10-09, 22:49 ]
debugscript 3
database result uncollected after 5 minutes [ query: INSERT INTO _konto values(login,password]

[ Dodano: 2019-10-11, 22:05 ]
Dzięki, że ktoś chce pomóc :p serio :p
Ogarnąłem, że jeśli w tym samym pliku(co jest panel logowania) dodam w nim łączenie z mysql(dbconnect) i użyję zmiennej DBConnection

 DBConnection dbConnect,
dbQuery,
dbPoll

i prawidłowo uzupełnię mysql o tabele, kwerendy to przy prawidłowym skonfigurowaniu komendy

INSERT INTO nazwa_tabeli (login,passwordVALUE(?,?,?)",,)

To otrzymam w efekcie dodane konto w MYSQL :)

[ Dodano: 2019-10-11, 22:07 ]
Teraz chcę zrobić aby przy rejestacji konta o loginie "xxx" sprawdziło najpierw w bazie czy już jest, jeśli tak, to komunikat na gui. Tak samo z logowaniem, chce się zalogować na konto "xxx2" - komunikat, że nie istnieje i muszę zarejestrować.

[ Dodano: 2019-10-11, 22:59 ]
Mam tylko pytanie odnośnie tego komunikatu:

database result uncollected after 5 minutes

Dlaczego się pojawia? Z tego co rozumiem to mysql nie odebrał połączenia po 5 minutach tylko dlaczego?

[ Dodano: 2019-10-13, 13:09 ]
Trochę nie miałem czasu ale powracam z kolejnym pytaniem.

local checkLogin SELECT (...)
if checkLogin then
--[[
i teraz jak chcę wziąć login z gui i porównać z bazą to przy pomocy której komendy?
coś na zasadzie (niżej)
]]--
local checkLogin SELECT (...)
if checkLogin then
   local checkGuiLogin triggerClient
   if checkGuiLogin then
       if checkLogin == checkGuiLogin
   --w ten sposób?(wersja uproszczona)



Komentarz DsJ3 dodany 2019-10-09, 16:27Proszę o dodawanie tagu [lua]teskt[/.lua] bez kropki ułatwi to użytkownikom pomaganie
Ostatnio zmieniony przez DsJ3 2019-10-09, 16:25, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Tagi: dodawanie :: konta :: mysql
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:








Wyświetl posty z ostatnich:   

Odpowiedz do tematu

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

Skocz do: