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

Wysłany: 2018-01-05, 00:37


PolskiBudyn







Wiek: 24
Na forum: 3077 dni
Posty: 9
Nick w MP: PolskiBudyn



Respekt: 50

witam wszystki mam pewien powa?ny problem razem ze znajomym robimy serwer mta na stronie ServerProject. Ja mam si? zaj?? sprawami technicznymi on wygl?dem planami itp za?yczy? sobie zainstalowa? pewn? paczk? skrypt?w z innego nie aktywnego serwera problem jest taki ze nie mode po??czy? si? z baz? danych. Pojawia si? problem z po??czaniem "mysql/connection.lua:16: attempt to call global 'mysql_connect' (a nil value)" zamieszczam poni?ej skrypt


-- connection settings
local hostname = get( "137.74.0.12" )
local username = get( "db_28756" )
local password = get( "BOgnFmAkuEmM" )
local database = get( "db_28756" )
local port = tonumber( get( "3306" ) )

-- global things.
local MySQLConnection = nil
local resultPool = { }
local sqllog = false
local countqueries = 0

-- connectToDatabase - Internal function, to spawn a DB connection
function connectToDatabase(res)
MySQLConnection = mysql_connect(hostmane, username, password, database,port)

if (not MySQLConnection) then
if (res == getThisResource()) then
cancelEvent(true, "Cannot connect to the database.")
end
return nil
end

return nil
end
addEventHandler("onResourceStart", getResourceRootElement(getThisResource()), connectToDatabase, false)

-- destroyDatabaseConnection - Internal function, kill the connection if theres one.
function destroyDatabaseConnection()
if (not MySQLConnection) then
return nil
end
mysql_close(MySQLConnection)
return nil
end
addEventHandler("onResourceStop", getResourceRootElement(getThisResource()), destroyDatabaseConnection, false)

-- do something usefull here
function logSQLError(str)
local message = str or 'N/A'
outputDebugString("MYSQL ERROR "..mysql_errno(MySQLConnection) .. ": " .. mysql_error(MySQLConnection))
exports['logs']:logMessage("MYSQL ERROR :O! [QUERY] " .. message .. " [ERROR] " .. mysql_errno(MySQLConnection) .. ": " .. mysql_error(MySQLConnection), 24)
end

function getFreeResultPoolID()
local size = #resultPool
if (size == 0) then
return 1
end
for index, query in ipairs(resultPool) do
if (query == nil) then
return index
end
end
return (size + 1)
end

------------ EXPORTED FUNCTIONS ---------------

function ping()
if (mysql_ping(MySQLConnection) == false) then
-- FUU, NO MOAR CONNECTION
destroyDatabaseConnection()
connectToDatabase(nil)
if (mysql_ping(MySQLConnection) == false) then
logSQLError()
return false
end
return true
end

return true
end

function escape_string(str)
if (ping()) then
return mysql_escape_string(MySQLConnection, str)
end
return false
end

function query(str)
if sqllog then
exports['logs']:logMessage(str, 24)
end
countqueries = countqueries + 1

if (ping()) then
local result = mysql_query(MySQLConnection, str)
if (not result) then
logSQLError(str)
return false
end

local resultid = getFreeResultPoolID()
resultPool[resultid] = result
return resultid
end
return false
end

function unbuffered_query(str)
if sqllog then
exports['logs']:logMessage(str, 24)
end
countqueries = countqueries + 1

if (ping()) then
local result = mysql_unbuffered_query(MySQLConnection, str)
if (not result) then
logSQLError(str)
return false
end

local resultid = getFreeResultPoolID()
resultPool[resultid] = result
return resultid
end
return false
end

function query_free(str)
local queryresult = query(str)
if not (queryresult == false) then
free_result(queryresult)
return true
end
return false
end

function rows_assoc(resultid)
if (not resultPool[resultid]) then
return false
end
return mysql_rows_assoc(resultPool[resultid])
end

function fetch_assoc(resultid)
if (not resultPool[resultid]) then
return false
end
return mysql_fetch_assoc(resultPool[resultid])
end

function free_result(resultid)
if (not resultPool[resultid]) then
return false
end
mysql_free_result(resultPool[resultid])
table.remove(resultPool, resultid)
return nil
end

-- incase a nub wants to use it, FINE
function result(resultid, row_offset, field_offset)
if (not resultPool[resultid]) then
return false
end
return mysql_result(resultPool[resultid], row_offset, field_offset)
end

function num_rows(resultid)
if (not resultPool[resultid]) then
return false
end
return mysql_num_rows(resultPool[resultid])

end

function insert_id()
return mysql_insert_id(MySQLConnection) or false
end

function query_fetch_assoc(str)
local queryresult = query(str)
if not (queryresult == false) then
local result = fetch_assoc(queryresult)
free_result(queryresult)
return result
end
return false
end

function query_rows_assoc(str)
local queryresult = query(str)
if not (queryresult == false) then
local result = rows_assoc(queryresult)
free_result(queryresult)
return result
end
return false
end

function query_insert_free(str)
local queryresult = query(str)
if not (queryresult == false) then
local result = insert_id()
free_result(queryresult)
return result
end
return false
end

function escape_string(str)
return mysql_escape_string(MySQLConnection, str)
end

function debugMode()
if (sqllog) then
sqllog = false
else
sqllog = true
end
return sqllog
end

function returnQueryStats()
return countqueries
-- maybe later more
end

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-01-05, 22:33


BielakPlay







Wiek: 27
Na forum: 3248 dni
Posty: 2
Nick w MP: BielakPlay



Respekt: 50

Masz tutaj ca?y folder z pod??czeniem si? do BazyDanych - PhpMyAdmin. Poprzez Folder/Plik ( Ogrpg-db ). Otwierasz ten folder i wklejasz ten, tylko zmie? go pod sw?j serwer.

--[[
    ResourceOURGame v2
    DevelopersSplit <split.programista@gmail.com>
    You have no right to use this code without my permission.
    (c2015 <split.programista@gmail.com>. All rights reserved.
]]

-- Settings
DBHandler=nil
DBName="db_29557"
DBUser="db_29557"
DBPass="02o933aq"
DBHost="178.33.53.47"

-- Functions
function dbSet(...)
    if not {...} then return end
    local stringe=dbPrepareString(DBHandler,...)
    local query=dbExec(DBHandlerstringe)
    return query
end

function dbGet(...)
    if not {...} then return end
    local stringe=dbPrepareString(DBHandler,...)
    local query=dbQuery(DBHandlerstringe)
    local result,num_affected_rowslast_insert_id =dbPoll(query, -1)
    return result
end


addEventHandler("onResourceStart"resourceRoot, function()
    DBHandler=dbConnect("mysql""dbname="..DBName..";host="..DBHost..""DBUserDBPass"share=1;autoreconnect=1")
    if DBHandler then
        outputDebugString("* Po??czono pomy?lnie! (MySQL)")
        dbSet("SET NAMES utf8")
    else
        outputDebugString("* Brak po??czenia! (MySQL)")
    end
end)


local SQL_LOGIN="db_29557"
local SQL_PASSWD="02o933aq"
local SQL_DB="db_29557"
local SQL_HOST="178.33.53.47"
local SQL_PORT=3306

local root getRootElement()

local SQL

local function connect()
    SQL mysql_connect(SQL_HOSTSQL_LOGINSQL_PASSWDSQL_DBSQL_PORT)
    if (not SQLthen
        outputServerLog("BRAK POLACZENIA Z BAZA DANYCH!")
    else
        mysql_query(SQL,"SET NAMES utf8")
        --outputServerLog("Modul mysql polaczony!")
    end

end


local function keepAlive()
    if (not mysql_ping(SQL)) then
        outputServerLog("Zerwane polaczenie z baza danych, nawiazywanie...")
        connect()
    end
end
addEventHandler("onResourceStart",getResourceRootElement(),function()
    connect()
    setTimer(keepAlive300000)
end)

function esc(value)
    return mysql_escape_string(SQL,value)
end

function pobierzTabeleWynikow(query)
    local result=mysql_query(SQL,query)
    if (not resultthen
        outputDebugString("mysql_query failed: (" .. mysql_errno(SQL) .. ") " .. mysql_error(SQL))
        outputServerLog("mysql_query failed: (" .. mysql_errno(SQL) .. ") " .. mysql_error(SQL))
        return nil
    end
    local tabela={}
    for result,row in mysql_rows_assoc(result) do
        table.insert(tabela,row)
    end
    mysql_free_result(result)
    return tabela
end

function q(sQuery, ...)
    local qHandler=dbQuery(CDatabase.hConsQuery, ...)
    local resultiRowssError=dbPoll(qHandler90)
    if result==nil then
        resultiRowssError=dbPoll(qHandler, -1)
        if result==nil then
            dbFree(qHandler)
            outputDebugString('Max query runtime reached: ' ..sQuery.. '|' ..iRows.. '|' ..sError)
            return false
        end
    end
    if result==false then
        outputDebugString('Error executing query: ' ..sQuery.. '|' ..iRows.. '|' ..sError)
        return false
    end
    return resultiRows, (sError or '-')
end

function pobierzWyniki(query)
    local result=mysql_query(SQL,query)
    if (not resultthen return nil end
    row mysql_fetch_assoc(result)
    mysql_free_result(result)
    return row
end


function zapytanie(query)
    local result=mysql_query(SQL,query)
    if (resultthen mysql_free_result(result) return true end
    return
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


function getSQLLink()
    return SQL
end


Ostatnio zmieniony przez _Haze 2018-01-07, 14:20, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Tagi: nie :: mode :: się :: połączyć :: mysql
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » [DM] nie mode się połączyć z mysql 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