На официальном сайте есть урок по MySQL я решил сделать на основе того урока свой.
Мы будем использовать плагин от G-sTyLeZzZ и еще нужно скачать libmysql.dll(его нужно закинуть в папку с сервером).
Когда скачали плагин там должно быть два файла: mysql.dll и a_mysql.inc.
Кидаем mysql.dll в папку plugins которая находится в папке с сервером если ее нет то создайте и в server.cfg нужно написать вот такую строчку:
а инклуд a_mysql.inc суем ко всем инклудам павно. Ну и еще нам нужен Denwer. Устанавливаем денвер и теперь мы готовы к работе.
Прежде всего мы должны создать БД:
А дальше таблицу:
Как видите мы создали три поля:
userid - ид игрока в бд(когда такой имеется легче работать но можно без него обойтись
username - ник игрока
password - пароль
Все БД и таблицу мы создали теперь можно смело подключатся к ним в начало мода нужно добавить это:
PHP код:
#define SQL_HOST "localhost"//хост MySQL
#define SQL_USER "root"//пользователь MySQL
#define SQL_PASS ""//пароль MySQL
#define SQL_DB "DB_NAME"//измени на имя БД которую ты создал
А теперь будем подключатся
PHP код:
forward ConnectMySQL();
public ConnectMySQL()
{
mysql_connect(SQL_HOST, SQL_USER, SQL_DB, SQL_PASS))//подключаемся
if(mysql_ping() == 1)//проверка подключились мы к MySQL
{
mysql_debug(1);
printf("[MYSQL]: Подключение к `%s` выполнено!", SQL_DB);
}
else
{
printf("[MYSQL]: [ERROR]: Подключение к `%s` не выполнено", SQL_DB);
}
return 1;
}
Ну а теперь когда мы подключились к серверу MySQL я розкажу вам как проводить разные операции с ним:
Это можно использовать регистрации тоесть записи из таблицы:
PHP код:
new string[300];
format(string, sizeof(string), "INSERT INTO `users` (`username`, `password`) VALUES ('%s', '%s'')", PlayerName(playerid) , inputtext);
mysql_query(string);
Теперь для авторизации:
PHP код:
new string[256];
format(string, sizeof(string), "SELECT `password` FROM `users` WHERE `username` = '%s'", PlayerName(playerid));
mysql_query(string);
И для сохранения данных при выходе из сервера:
PHP код:
new string[256];
format(string, sizeof(string), "UPDATE `users` SET `имя поля` = '%s' WHERE `username` = '%s'", string to update, PlayerName(playerid));
Ну вот и все автор VanincheG тоесть я, если есть проблемы пишите тут в тему с радостью вам помогу.