xDavid Posted June 26, 2015 Share Posted June 26, 2015 Hello i have a Problem, i am learning lua+mysql and i will test a nice dayZ Script. But the Login make Problems [2015-06-23 22:16:04] ERROR: Client (Nerd) triggered serverside event onPlayerDayZRegister, but event is not added serverside serverside saves = {} local dbConnection = dbConnect("mysql", "dbname=DBNAME;host=127.0.0.1", "Name", "PW","share=1") if (dbConnection) then outputServerLog("Successfully connected to MySQL!") else outputServerLog("Failed to connect to MySQL!") end addEvent("checkifRegisteredorleggedIn",true) addEventHandler("checkifRegisteredorleggedIn",root,function(player) qr = dbQuery(dbConnection, "SELECT * FROM users") result = dbPoll(qr, -1) for v,k in ipairs(result) do if k['Name'] == getPlayerName(player) then triggerClientEvent("enableLogin",player) return end end triggerClientEvent("enableRegister",player) end) Link to comment
xeon17 Posted June 26, 2015 Share Posted June 26, 2015 The debug error was enough clear , the problem is that there isn't any event with the name onPlayerDayZRegister on server-side. Check other server-side files in your resource if there are any, the problem could be a typo in name of event or simply the event is missing. Link to comment
xDavid Posted June 26, 2015 Author Share Posted June 26, 2015 Hey i found on the clientside this. local usernamelabel = "Username" local passwordlabel = "password" canlogin = true canreg = true Font = dxCreateFont( "tachoFont.ttf", 33) Font1 = guiCreateFont( "tachoFont.ttf", 18) Font2 = guiCreateFont( "tachoFont.ttf", 25) lp = getLocalPlayer() loginkrypt = {} loginkrypt["main"] = guiCreateWindow(0.24, 0.21, 0.51, 0.57, "", true) guiWindowSetSizable(loginkrypt["main"], false) guiWindowSetMovable(loginkrypt["main"], false) loginkrypt["loginuser"] = guiCreateButton(0.04, 0.79, 0.28, 0.14, "Login", true, loginkrypt["main"]) guiSetFont(loginkrypt["loginuser"], Font2) guiSetProperty(loginkrypt["loginuser"], "NormalTextColour", "FFFFFFFF") usereditlogin = guiCreateEdit(0.07, 0.38, 0.26, 0.07, "", true, loginkrypt["main"]) username = guiCreateLabel(0.08, 0.30, 0.25, 0.06, usernamelabel.." ", true, loginkrypt["main"]) guiSetText(usereditlogin,getPlayerName(lp)) guiSetFont(username, Font1) guiEditSetReadOnly (usereditlogin,true) guiLabelSetHorizontalAlign(username, "center", false) guiLabelSetVerticalAlign(username, "center") PwEditLogin = guiCreateEdit(0.07, 0.57, 0.26, 0.07, "", true, loginkrypt["main"]) rofl = guiCreateLabel(0.08, 0.51, 0.25, 0.06, passwordlabel.." ", true, loginkrypt["main"]) guiSetFont(rofl, Font1)--"default-bold-small") guiLabelSetHorizontalAlign(rofl, "center", false) guiLabelSetVerticalAlign(rofl, "center") regbtn = guiCreateButton(0.43, 0.79, 0.29, 0.14, "Register", true, loginkrypt["main"]) guiSetProperty(regbtn, "NormalTextColour", "FFAAAAAA") guiSetFont(regbtn, Font2)--"default-bold-small") loginkrypt["registerusername"] = guiCreateEdit(0.44, 0.37, 0.26, 0.07, "", true, loginkrypt["main"]) guiSetText(loginkrypt["registerusername"],getPlayerName(lp)) guiEditSetReadOnly (loginkrypt["registerusername"],true) useasdsda = guiCreateLabel(0.44, 0.29, 0.25, 0.06, usernamelabel.." ", true, loginkrypt["main"]) guiLabelSetHorizontalAlign(useasdsda, "center", false) guiLabelSetVerticalAlign(useasdsda, "center") guiSetFont(useasdsda, Font1) loginkrypt["registerpassword"] = guiCreateEdit(0.44, 0.57, 0.26, 0.07, "", true, loginkrypt["main"]) registerpw = guiCreateLabel(0.44, 0.51, 0.25, 0.06, passwordlabel.." ", true, loginkrypt["main"]) guiLabelSetHorizontalAlign(registerpw, "center", false) guiLabelSetVerticalAlign(registerpw, "center") guiSetFont(registerpw, Font1) guiCreateGridList(0.37, 0.04, 0.04, 0.94, true, loginkrypt["main"]) loginkrypt["newsgridlist"] = guiCreateGridList(0.73, 0.04, 0.25, 0.94, true, loginkrypt["main"]) loginkrypt["newsgridlistcol"] = guiGridListAddColumn(loginkrypt["newsgridlist"], "News", 0.9) --guiSetVisible(loginkrypt["main"],false) for i, pos in ipairs(news) do -- Füllt die Liste mit vip.vehicles local row = guiGridListAddRow ( loginkrypt["newsgridlist"] ) guiGridListSetItemText ( loginkrypt["newsgridlist"], row, loginkrypt["newsgridlistcol"], tostring ( pos[1] ), false, false ) end rules = {} rules["main"] = guiCreateWindow(0.25, 0.11, 0.52, 0.77, "", true) guiWindowSetMovable(rules["main"], false) guiWindowSetSizable(rules["main"], false) rulesacceptbutton = guiCreateButton(0.74, 0.91, 0.24, 0.07, "Close", true, rules["main"]) guiSetFont(rulesacceptbutton, "default-bold-small") guiSetProperty(rulesacceptbutton, "NormalTextColour", "FFAAAAAA") rules["checkbox"] = guiCreateCheckBox(0.02, 0.92, 0.71, 0.07, "I Read and Accept the Rules | Ich habe die Regeln gelesen und akzeptiere sie", false, true, rules["main"]) guiSetFont(rules["checkbox"], "default-bold-small") rules["memo"] = guiCreateMemo(0.01, 0.03, 0.98, 0.87, "\n", true, rules["main"]) guiMemoSetReadOnly (rules["memo"],true ) guiSetVisible(rules["main"],false) for i, pos in ipairs(rulestext) do local inhalt = guiGetText(rules["memo"]) guiSetText(rules["memo"],inhalt.."\n"..pos[1].."\n"..pos[2]) end local x,y = guiGetScreenSize() addEventHandler("onClientRender", root, function() if (guiGetVisible(loginkrypt["main"]) == true) then dxDrawImage(x/3.8, y/4, 500, 150, "underheader.png", 0, 0, 0, tocolor(255, 255, 255, 255), true) dxDrawImage(x/4.5, y/30/20-40, 813, 379, "header.png", 0, 0, 0, tocolor(255, 255, 255, 255), true) end end ) showCursor(true) addEventHandler("onClientPlayerJoin", getLocalPlayer(), function () guiSetVisible(loginkrypt["main"],true) showCursor(true) end) addEvent("enableRegister",true) addEventHandler("enableRegister",getRootElement(), function () canlogin = false canreg = true guiEditSetReadOnly (PwEditLogin,true) guiSetProperty( loginkrypt["loginuser"], "Disabled", "True" ) end) addEvent("enableLogin",true) addEventHandler("enableLogin",getRootElement(), function () canlogin = true canreg = false guiEditSetReadOnly (loginkrypt["registerpassword"],true) guiSetProperty( regbtn, "Disabled", "True" ) end) triggerServerEvent ( "checkifRegisteredorleggedIn", lp,lp) guiSetInputMode ( "no_binds_when_editing" ) addEventHandler("onClientGUIClick", regbtn, function () if (guiGetText(loginkrypt["registerpassword"]) == "") or (guiGetText(loginkrypt["registerusername"]) == "") then return end if (canreg == false) then return end username = guiGetText(loginkrypt["registerusername"]) password = guiGetText(loginkrypt["registerpassword"]) guiSetVisible(rules["main"],true) addEventHandler("onClientGUIClick", rulesacceptbutton, function () if not (guiCheckBoxGetSelected ( rules["checkbox"]) == true ) then return end -- triggerServerEvent ( "onPlayerDayZFakeCreateRegister", lp,username,password) setTimer(triggerServerEvent,250,1,"onPlayerDayZRegister", lp,username,password,getLocalPlayer()) guiSetVisible(rules["main"],false) showCursor(false) end ) --showCursor(false) guiSetVisible(loginkrypt["main"],false) end ) addEventHandler("onClientGUIClick", loginkrypt["loginuser"], -- Schließt Das Fenster function () if (guiGetText(usereditlogin) == "") or (guiGetText(PwEditLogin) == "") then return end if (canlogin == false) then return end username = guiGetText(usereditlogin) password = guiGetText(PwEditLogin) -- triggerServerEvent ( "onPlayerDayZFakeCreateLogin", lp,username,password,lp) setTimer(triggerServerEvent ,250,1, "onPlayerDayZLogin", lp,username,password,getLocalPlayer()) showCursor(false) guiSetVisible(loginkrypt["main"],false) end ) // I think when i have acc in teh DB and i login on the Server have we the same error with onPlayerDayZLogin Link to comment
xeon17 Posted June 26, 2015 Share Posted June 26, 2015 This is useless. I guess you haven't understood me well, you're trying to trigger a event which doesn't exist. Link to comment
xDavid Posted June 26, 2015 Author Share Posted June 26, 2015 Hey i found a MySQL Dayz with Login, and the Login have this problem. I don't make this Login/ Register. I have a Normal Dayz Script with a login. and on this is serverside local root = getRootElement() tryToLoginPlayer = function(username, password) local account = getAccount(username, password) if account then local accountName = getAccountName(account) logIn(source, account, password) triggerClientEvent(source, "onPlayerDoneLogin", source, accountName, password) triggerEvent("onPlayerDayZLogin", getRootElement(), username, pass, source) else outputChatBox("[Login]#FF9900 Wrong Passwort or Username", source, 255, 255, 255, true) end end addEvent("onClientSendLoginDataToServer", true) addEventHandler("onClientSendLoginDataToServer", root, tryToLoginPlayer) tryToRegsiterPlayer = function(username, pass) if not getAccount(username) then theAccount = addAccount(username, pass) if theAccount then logIn(source, theAccount, pass) outputChatBox("Sie haben sich erfolgreich registriert" .. username .. "' for player '" .. getPlayerName(source) .. "'#FFFFFF mit dem password '" .. pass .. "'!", source, 255, 255, 255, true) triggerClientEvent(source, "onPlayerDoneLogin", source, username, pass) triggerEvent("onPlayerDayZRegister", getRootElement(), username, pass, source) else reason = "Unbekannter Fehler!" outputChatBox("[Login]#FF9900 " .. reason, source, 255, 255, 255, true) end else reason = "Dieses Konto ist bereits vorhanden" outputChatBox("[Login]#FF9900 " .. reason, source, 255, 255, 255, true) end end addEvent("onClientSendRegisterDataToServer", true) addEventHandler("onClientSendRegisterDataToServer", getRootElement(), tryToRegsiterPlayer) addEventHandler("onPlayerJoin", getRootElement(), function() fadeCamera(source, true) setCameraMatrix(source, 2659.2990722656,2730.078125,11.622900009155,2660.2810058594,2730.2053222656,11.483201980591) end ) addEvent("requestServerNews", true) addEventHandler("requestServerNews", root, function() -- upvalues: root local text1 = get("news1") local text2 = get("news2") local text3 = get("news3") local text4 = get("news4") local bool1 = get("news1new") local bool2 = get("news2new") local bool3 = get("news3new") local bool4 = get("news4new") triggerClientEvent(source, "onClientGetNews", root, text1, text2, text3, text4, bool1, bool2, bool3, bool4) end ) But this save the Players on a internal.db and not to a Mysql db. The Dayz Script load the Players from a MySQL DB //EDIT The MySQL Dayz with Login are 2 Ressource 1 is Login and the other is the Dayz Script Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now