LCS-BUGS Posted May 21, 2021 Share Posted May 21, 2021 Bom, eu tenho uma proteção que funciona checando o IP pelo site http://checkip.dyndns.com/ Eu queria evoluir e colocar para Funcionar via MySQL só que a única coisa que consegui foi conectar a DataBase, se alguém puder ajudar eu agradeço muito. function connect() DBConnection = dbConnect( "mysql", "dbname=dbname;host=host;charset=utf8", "user", "senha" ) if (not DBConnection) then outputDebugString("Mysql error") else outputDebugString("Mysql Connected") end end addEventHandler("onResourceStart",resourceRoot, connect) function query(...) local queryHandle = dbQuery(DBConnection, ...) if (not queryHandle) then return nil end local rows = dbPoll(queryHandle, -1) return rows end function execute(...) local queryHandle = dbQuery(DBConnection, ...) local result, numRows = dbPoll(queryHandle, -1) return numRows end function getDBConnection() return DBConnection end ------------------------------- o script da proteção é essa SERVER_IP = "false" function startIPChecking () if (hasObjectPermissionTo (getThisResource(), "function.fetchRemote", false)) then -- Se o resource de segurança tem permissão de fetchRemote, então: fetchRemote ("http://checkip.dyndns.com/", myCallback, "", false) -- Obtém o IP do servidor através deste link. else outputDebugString ("The resource '"..getResourceName (getThisResource()).."' needs the following permission: function.fetchRemote", 1) SERVER_IP = "false" -- O resource de segurança precisa da seguinte permissão: function.fetchRemote para poder obter o IP do servidor. end end addEventHandler ("onResourceStart", resourceRoot, startIPChecking) function myCallback (responseData, errors) if (errors == 0) then -- Se não houve erros durante o callBack, então: SERVER_IP = responseData:match("<body>Current IP Address: (.-)</body>") -- SERVER_IP recebe uma string com o IP do servidor. else SERVER_IP = "error" end end function getServerIP() -- Função exportada return SERVER_IP end function authorizeResource () authorizedIP = "000.000.000.000" local ip = exports["serverIP"]:getServerIP () -- ip recebe o valor que está na variável Server_IP do resource de segurança. if (ip ~= authorizedIP) then -- Se o IP que recebeu do resource de segurança for diferente do IP configurado neste resource, então: cancelEvent(true, "This resource was not purchased by this IP.") -- Cancela a ativação deste resource. (não precisa de permissão Admin) print ("Incorrect Server IP from: "..getResourceName(getThisResource()).." (REASON: "..getCancelReason ()..")") end end addEventHandler ("onResourceStart", resourceRoot, authorizeResource) Link to comment
Administrators Tut Posted May 21, 2021 Administrators Share Posted May 21, 2021 Thread's been moved into the Portuguese scripting section 1 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