• Из-за обновления GTA 5 (был добавлен новый патч) может временно не работать вход в RAGE Multiplayer.

    ERROR: Your game version is not supported by RAGE Multiplayer.

    Данная ошибка говорит о том, что GTA V обновилась до новой версии (GTA Online тоже). Вам необходимо обновить саму игру в главном меню вашего приложения (Steam / Epic Games / Rockstar Games).
    Если после этого RAGE:MP все равно не работает - вам нужно дождаться выхода патча для самого мультиплеера (обычно это занимает от нескольких часов до нескольких дней).

    Новости и апдейты Rockstar Games - https://www.rockstargames.com/ru/newswire/
    Статус всех служб для Rockstar Games Launcher и поддерживаемых игр: https://support.rockstargames.com/ru/servicestatus


    Grand Theft Auto 5 (+ GTA Online) последний раз были обновлены:

Мануал Урок Подключаем и работаем с MySQL на сервере Rage MP

nettkom

Специалист
Автор темы
14 Сен 2020
58
42
82
Рано или поздно нам понадобится сохранять данные с каком-то постоянном хранилище, чтобы они были доступны даже после перезапуска сервера. Часто люди записывают нужные данные в простые текстовые файлы. Но если данных много, они разнообразные и их формат может меняться, то удобнее хранить их в базе данных.



Одной из самых популярных систем управления базами данных является MySQL. В этом уроке мы разберемся как мы можем работать с базой данных MySQL на сервере Rage MP.

Тестировать мы будет на своем компьютере и нам понадобится установить сервер MySQL и node js.
Я использую mysql сервер в комплекте программы Open Server. В этой же программе есть клиент phpMyAdmin с помощью которого можно работать с базой данных в браузере.

1604764645449.jpg


Node js мы скачаем и установим с официального сайта (LTS версия). При установке можно ничего не менять и оставлять все как есть по-умолчанию.
Для теста я создал базу данных rage-test и в ней простенькую таблицу accounts

1604764721613.jpg



Node js мы скачаем и установим с официального сайта (LTS версия). При установке можно ничего не менять и оставлять все как есть по-умолчанию.

Для теста я создал базу данных rage-test и в ней простенькую таблицу accounts
Код:
npm install mysql
1604765056625.jpg


После установки пакета mysql мы можем использовать его в своих скриптах! Ниже приведу пример подключения к базе данных

Код:
var mysql = require('mysql'); // подключаем библиотеку к скрипту

var connection = mysql.createConnection({ // настройки подключения к базе данных
    host     : 'localhost',
    user     : 'mysql',
    password : 'mysql',
    database : 'rage-test'
});

connection.connect(function(err) { // подключаемся
    if (err) { // в случае ошибки в err будет объект ошибки
        console.error('Ошибка подключения: ' + err.stack);
        return;
    }

    console.log('Успешное подключение к базе данных ');
});

Если мы смогли успешно подключиться к базе данных, то теперь можем выполнить наш первый запрос

Код:
connection.query('SELECT * FROM accounts', function (error, results) {
    console.log(results);
});

1604765371003.jpg

Если нам нужно подставить в запрос какое-то значение (например, логин который ввел пользователь), то подставляем их сразу с экранирование таким способом:



Код:
connection.query('SELECT * FROM accounts WHERE login = ? AND password = ?', ['Иванов Иван', '47t6437t8ygoeruygo'], function (error, results) {
    console.log(results);
});

В самом запросе в местах где будут подставляться значения мы ставим вопросительный знак, а сами значение передаем в массиве во втором аргументе функции query (в том же порядке, что и вопросительные знаки). Это гораздо безопаснее чем подставлять данные напрямую в запрос.


Также добавим к примеру еще одну запись в таблицу accounts

Код:
connection.query('INSERT INTO accounts SET login = ?, password = ?', ['Mark', '8888']);

1604765940336.jpg



По сути этого достаточно чтобы начать полноценно работать с mysql. Понятное дело нужно знать основы языка запросов SQL. Там еще много интересных возможностей.

Полезные ссылки:
Документация по модулю mysql (ENG)
Сайт Open Server
Сайт node js
avtor - Lev Angel
 

Вложения

  • 1604765056625.jpg
    1604765056625.jpg
    81.3 KB · Просмотры: 378
Последнее редактирование:

hellcat

Участник портала
20 Сен 2020
59
11
20
Так и будешь все копировать с соседнего борда?
 
  • Like
Реакции: nettkom

nettkom

Специалист
Автор темы
14 Сен 2020
58
42
82
да так и буду капипиздить ))) хочу объединить все уроки и статьи для новичков
 
  • Like
Реакции: SAYREX

VEYYN

Начинающий специалист
29 Дек 2020
20
1
63
Как быть, если нужно сделать запросы в БД из клиентских файлов (client_packages), для использования в клиентских функциях? Подключать Бд к клиентским файлам?
 

koltr

Гуру
high coder
14 Сен 2020
154
114
120
Как быть, если нужно сделать запросы в БД из клиентских файлов (client_packages), для использования в клиентских функциях? Подключать Бд к клиентским файлам?
Подключать Бд к клиентским файлам помянем БД. Делай запросы на сервер, и потом отправляй на клиент. А лучше сделай утилиту что ли, через асинхронный метод. Который будет ждать пока сервер примет данные, и отправит тебе новые.
 
  • Like
Реакции: VEYYN

bm_nisarmor

Участник портала
12 Мар 2023
29
4
8
Мужики кто ни будь может помочь с авто донатом
 

Mi-Zaft

Гуру
VIP
9 Окт 2020
1,189
412
145
  • Like
Реакции: DaVilka

Mi-Zaft

Гуру
VIP
9 Окт 2020
1,189
412
145
  • Like
Реакции: DaVilka