Jump to content

RellaX

Members
  • Posts

    13
  • Joined

  • Last visited

Everything posted by RellaX

  1. Мда, знал про это, но пихал туда, куда не нужно... Пофиг, спасибо. Решено
  2. Не могу записать русский текст базу данных, везде использую кодировку utf8, Сам mysql .lua function connect() connection = dbConnect("mysql","dbname="..db_table..";host="..db_host..";port="..db_port..";unix_socket=/var/run/mysqld/mysqld.sock",db_Name,db_Password) if (connection) then outputServerLog("MySQL: База данных была успешно подключена!") return true else outputServerLog("MySQL: База данных не была подключена!! Повторное подключение через 5 секунд...") setTimer(connect,5000,1) end end addEventHandler("onResourceStart",resourceRoot,connect) function singleQuery(str,...) if (connection) then local query = dbQuery(connection,str,...) local result = dbPoll(query,-1) if (type(result == "table")) then return result[1] else return result end else return false end end function execute(str,...) if (connection) then local query = dbExec(connection,str,...) return query else return false end end
  3. Знает кто почему при (допустим)бане игрока, указывая причину на русском - в БД она отображает не понятно что...Кодировка cp1251
  4. Видишь ли, у меня регистрация и авторизация на MySQL, и я не добавлял функцию addAccount/LogIn. Я просто не могу получить аккаунт, ведь все игроки у меня гости (guest). Собственно покажу код для регистрации/авторизации: -- Авторизация аккаунта addEvent("onPlayerAttemptLogin",true) addEventHandler("onPlayerAttemptLogin",root, function (Name, Password) if (exports.MySQL:singleQuery("SELECT * FROM accounts WHERE BINARY Name=? LIMIT 1",tostring(Name))) then local accData = exports.MySQL:singleQuery("SELECT * FROM accounts WHERE BINARY Name=? AND BINARY Password=? LIMIT 1",tostring(Name),tostring(Password)) if (accData) then isPlayerLogged = true setPlayerName(source, Name) outputServerLog("LOGGED IN: " .. tostring(Name) .. "(" .. getPlayerSerial(source) .. "/" .. getPlayerIP(source) .. ")") outputChatBox ("• [Успешно] #BEBEBEВы вошли в аккаунт! (" .. Name .. ")", source, 19, 191, 19, true) spawnPlayer(source, 1208.369140, -1749.186889, 13.594351, 40, 230, 0, 0) setElementRotation(source, 0, 0, 40 , "default", true) setElementDimension(source, 0) setCameraTarget(source) setPlayerHudComponentVisible(source, "all", true) setElementFrozen(source, false) setPlayerMoney(source, tonumber(accData.Money)) triggerClientEvent(source,"closeLoginWindow", source) else outputChatBox ("• [Ошибка] #BEBEBEВы ввели неверный Ник и/или Пароль!", source, 230, 11, 11, true) end else outputChatBox ("• [Ошибка] #BEBEBEНик \"" .. Name .. "\" не зарегистрирован в базе данных!", source, 230, 11, 11, true) end end) -- Регистрация аккаунта addEvent("onPlayerAttemptRegister",true) addEventHandler("onPlayerAttemptRegister",root, function (Name, Password1, Password2, Email) if (exports.MySQL:singleQuery("SELECT Name FROM accounts WHERE BINARY Name=? LIMIT 1",Name)) then outputChatBox ("• [Ошибка] #BEBEBEНик \"" .. Name .. "\" уже зарегистрирован в базе данных!", source, 230, 11, 11, true) else local time = getRealTime() local datereg = string.format('%02d/%02d/%04d %02d:%02d', time.monthday, time.month + 1, time.year + 1900, time.hour, time.minute) if (exports.MySQL:execute("INSERT INTO accounts (Name, Password, Email, VIP, Reg_Serial, Reg_IP, Reg_Entr) VALUES (?,?,?,?,?,?,?)", Name, Password1, Email, 0, getPlayerSerial(source), getPlayerIP(source), datereg)) then outputChatBox ("• [Успешно] #BEBEBEВы зарегистрировали новый аккаунт! (" .. Name .. ")", source, 19, 191, 19, true) outputChatBox ("• [Помощь] #BEBEBEНажмите на \"Назад\" и введите данные аккаунта для входа!", source, 230, 153, 0, true) end end end)
  5. @Kenix, да спасибо, вчера уже сам нашёл. У меня есть ещё один такой вопрос: Я решил создать сервер с 0, чтобы он был связан только с mysql, без участия sql. Никак не могу понять, как получить аккаунт игрока, с которым я хочу начать действие, собственно кикнуть. WARNING: admin\1lvl.lua:12: Bad argument @ 'kickPlayer' [Expected player at argument 1, got string 'guest'] function pKick (source, command, player, ...) local kickuser = getPlayerFromName(player) if (kickuser) then if (...) then local message = table.concat ( { ... }, " " ) outputChatBox ("Администратор " .. getPlayerName(source) .. " кикнул " .. getPlayerName(player) .. ". Причина: " .. message, _root, 255, 100, 70 ) else outputChatBox ("Администратор " .. getPlayerName(source) .. " кикнул " .. getPlayerName(player) .. ".", _root, 255, 100, 70 ) end kickPlayer (kickuser, getPlayerName(source), message) else outputChatBox ("Ошибка! Введите: /pkick <игрок> <причина(можно без)>", source, 255, 100, 70 ) end end addCommandHandler ("pkick", pKick)
  6. Разбирается кто-то с MySQL?Решил сделать авторизацию через MySQL, все действия работают нормально, но есть одно но:Если я допустим зарегистрировал в БД Логин: adMin / Пароль: sySadmin, то при авторизации я могу ввести admin и sysadmin, и спокойно зайду на аккаунт. То-есть MySQL плевать хотел на регистр.Reg: (exports.MySQL:execute("INSERT INTO accounts (Name, Password, Email, VIP, Reg_Serial, Reg_IP, Reg_Entr) VALUES (?,?,?,?,?,?,?)", Name, Password1, Email, 0, getPlayerSerial(source), getPlayerIP(source), datereg)) Log: exports.MySQL:singleQuery("SELECT * FROM accounts WHERE Name=? AND Password=? LIMIT 1",tostring(Name),tostring(Password))
  7. Why doesn't work russian language?
  8. Знает кто-нибудь id объекта/лода этих окон?:http://imgur.com/a/oVusQЧерез MEd не могу найти...
  9. Пришлось переустановить винду(до этого 3 раза так делал) и в этот раз почему-то стала зависать игра, когда хочу открыть настройки МТА. Хотя всё остальное работает как часы. В чём может быть проблема?
  10. Спасибо, только если толкнуть туда машину, они открются
  11. Решил сделать ворота, которые открываются при подъезде на маркер. Всё работает, только выдаёт warning: Bad argument @ 'getPedOccupiedVehicle' [Expected ped at argument 1, got nil] на маркер и с него. Код въезда(выезд почти такой же): function moveGate ( source, matchingDimension ) local theVehicle = getPedOccupiedVehicle ( source ) if ( theVehicle ) then moveObject(GATESFA, 3500, -1529.3800048828-10.3, 482.67999267578, 8.6999998092651, 0, 0, 0, "InOutQuad") end end addEventHandler("onMarkerHit", SFAMARKER, moveGate)
×
×
  • Create New...