В теме 3 сообщения

Antoxa39
Dance 80-90, mmm Nice)

Здарова бандиты. 

Вообщем, в этом уроке я расскажу и покажу как подключить Базу Данных к MySQL.

Не регистрацию,и не в готовом моде где просто пользователя пароль хост и т.д меняете.

А подключение с нуля.

 

1.Нам понадобится MySQL.  Я использую R39-6. Скачать 

2.Приступаем к подготовительному этапу.

Заходим в Pawn и подключаем MySQL чуть ниже инклюда a_samp. #include <a_mysql>

Должно быть так.

После этого отчищаем мод от хлама. Должно получится вот так: жмЫкс

3.Подключение

Дальше нам требуется создать переменную,эта переменная будет хранить ИД подключения. в MySQL R39 создаем простую переменную.

new dbHandle; 

В MySQL R41 создаем так:

 new MySQL:dbHandle;

 

теперь создаем Константы

#define Host "127.0.0.1"
#define User "root" // это если вы используете Denwer. Если хостинг указываете другого пользователя.
#define DataBase "urok"
#define Password_SQL ""//Если вы на хостинге ставите пароль,для Denwer пароль не требуется, чуть позже скажу как его установить

Все, теперь переходим в public OnGameModeInit()

public OnGameModeInit()
{
    dbHandle = mysql_connect(Host,User,DataBase,Password_SQL); // приравниваем нашу переменную с ИД подключением к коннекту к базе данных. Извиняюсь если коряво обьяснил. Это для R39
    return 1;
}

Для R41

public OnGameModeInit()
{
    dbHandle = mysql_connect(Host,User,Password_SQL,DataBase);// В R41 поменялись местами Пароль и База
    return 1;
}

Если сделаем чтобы при подключении к базе выводилось сообщение о том,подключилось или нет. Я сделаю это без switch. Чтобы сильно не загружать смотрящих этот урок.

Делаем все там же в public OnGameModeInit()

public OnGameModeInit()
{
    dbHandle = mysql_connect(Host,User,DataBase,Password_SQL);
    if(mysql_errno())
    {
        printf("Подключение к базе данных %s не удалось.",DataBase); // %s означает строку. То есть будет выводить название базы данных которое указано в #define DataBase
    }
    else
    {
        printf("Подключение к базе данных %s успешно",DataBase);
    }
    return 1;
}

Все, с этим закончили. Остался последний этап, это отключение базы данных когда мод выключается.

Идем в паблик OnGameModeExit()

public OnGameModeExit()
{
    mysql_close(dbHandle);
    return 1;
}

Все. База данных подключена.

Чтобы скачать Denwer жмите сюды: плямп

Для установки можете перейти по этой ссылке: УСТАНОВКА

Отредактировано пользователем Antoxa39

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • tomi
      От tomi
      cтолкнулся с ошибкой при запуске сервера
      Если поможете буду благодарен
      [OnQueryError] SQL ERROR. QUERY:
      0) OnQueryError | error: Table 'conveniencerp.apanel_settings' doesn't exist
      1) OnQueryError | callback: apanel_settings_loading
      2) OnQueryError | query: SELECT * FROM `apanel_settings`
      3) OnQueryError | errorid: 1146
    • flixees
      От flixees
      Здраствуйте увидел в интернете как люди совместили один проект с другим и хочу также сделать как? взяли один мод RADMIR RP и совместили всеми известный KAIF RP  и у них получился шедевр у них мод радмира но сборка кайф рп скрины ниже дам хочу сделать также у них буквально анлок сброка и мод радмира
       


    • JAFAR
      От JAFAR
      Мужики подскажите, раньше можно было подключать TextDraw через txt фаил дабы не было мусора в моде
      так вот скажите как вы это делаете так как я пытаюсь подключить TextDraw через мод у меня выскакивает ошибка:>
      warning 239: literal array/string passed to a non-const parameter
       
      Пример моего подключения TextDraw 
       
      В OnGameModeInit
          new Text:SuicideTD[41];
          SuicideTD[0] = TextDrawCreate(526.166687, 66.314811, "usebox");
          и.т.д
       
      не пойму в чём проблема?