Jump to content

Проверка введенных данных (string)


Recommended Posts

Решил проверить код на ошибки и в итоге напоролся на это, проверка логина и пароля. В чем беда понять не могу по мануалу прошелся. Вроде сравнивание String значений может идти через == но не получается, собственно сам код:

  
DBInf = { 
    { DBpass = nil}, 
    { DBuser = nil}, 
    { DBuserID = nil} 
} 
  
function loginHandler(username,password) 
    dbQuery(  
        function(qh) 
        -- результат в переменную result 
            local result = dbPoll( qh, -1, true ) 
            --если result имеет в себе что-то 
            if result then 
                --считать колонки  
                outputDebugString( "Получение данных SQL" ) 
                for column, value in pairs ( result ) do 
                    DBInf.DBuser = value["Username"]  
                    DBInf.DBpass = value["Password"] 
                    DBInf.DBuserID = value["UserID"] 
                    outputDebugString( "USER:" .. tostring(DBInf.DBuser) .. " PASS:" .. tostring(DBInf.DBpass) .. " UserID:" ..tostring(DBInf.DBuserID) ) 
                end 
            end 
        end, 
    SQL, "SELECT * FROM accounts WHERE  Username= ? and Password = ?", username, password ) 
    -- проверяем username и password на правильность 
    outputDebugString( "Проверка данных" ) 
    if DBInf.DBuser == username and DBInf.DBpass == password then -- В этой строке проблема 
        outputDebugString( "Заход в игру" ) 
        -- игрок успешно залогинился, так что спавним его 
        if (client) then  
            outputDebugString( "Авторизация прошла" ) 
            --spawnPlayer(client, 1766, -1912, 14.5, 90) 
            --fadeCamera(client, true) 
            --setCameraTarget(client, client) 
            outputDebugString( tostring(DBInf.DBuserID) ) 
            triggerClientEvent("ChangeCharacters", getRootElement(), DBInf.DBuserID) 
            --triggerEvent("ChangeCharacters", client, DBInf.DBuserID ) 
        end 
    else 
        -- если username или password неправильны, выводим игроку соответствующее сообщение 
        if client then 
            triggerClientEvent ( client, "AuthERROR", client, "Не верный Username или Password @2" ) 
            triggerClientEvent ( client, "AuthView", client ) 
        end 
    end          
end 

В GUI выдает ошибку: "Не верный Username или Password @2"

Link to comment

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...