Сообщение от
DeimoS
Охх, срочно идите и разбирайтесь с тем, как работать с БД. Иначе лучше переписывайте мод на файлы. С ними проблем будет гораздо меньше при неверном использовании.
1) Точно так же, как и при добавлении любого другого поля
PHP код:
INSERT INTO `Имя_Таблицы` (`Столбец_1`, `Столбец_2`/*и т.д.*/) VALUE ('Поле_для_данных_в_столбец_1', 'Поле_для_данных_в_столбец_2', /*и т.д.*/)
2) Зависит от системы, по которой вы баните. Если используете Unix Time
PHP код:
SELECT * FROM `Имя_Таблицы` WHERE `Столбец_С_Датой_разбана` <= 'Сюда_выводим_текущую_дату_из_gettime'
PHP код:
CMD:ban(playerid, params[])
{
new string[128], ip[15];
if(PI[playerid][pAdmin] < 3) return true;
if(sscanf(params, "dds[128]", params[0], params[1],params[2])) return SendClientMessage(playerid, COLOR_GREY228, "Используйте: /ban [ID] [кол-во дней] [причина]");
if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid, COLOR_GREY228, "Введеный вами ID не найден на сервере");
if(params[1] > 30 || params[1] < 1) return SendClientMessage(playerid, COLOR_GREY228, "Количество дней от 1 до 30 дней!");
if(params[0] == playerid) return SendClientMessage(playerid, COLOR_GREY228, "Вы указали свой ID!");
new player[32],admin[32];
GetPlayerName(params[0], player, sizeof(player));
GetPlayerName(playerid, admin, sizeof(admin));
GetPlayerIp(params[0], ip,sizeof(ip));
if(PlayerInfo[params[0]][pAdmin] == 3)
{
PlayerInfo[playerid][pAdmin] = 0;
SendClientMessage(playerid, COLOR_KICK, "Вы попытались забанить администратора, за что бы ли сняты!");
KickNew(playerid);
return true;
}
PI[params[0]][pBanned] = params[1];
format(string, sizeof(string), "Администратор %s забанил игрока %s на %d дней. Причина: %s", admin, player, params[1],params[2]);
SendClientMessageToAll(COLOR_KICK, string);
mysql_format(MYSQL_ARG, asd, 90, "INSERT INTO `BanIP` (`IP`) VALUE ('%s')", ip);
mysql_function_query(MYSQL_ARG, asd, true, "", "");
KickNew(params[0]);
return true;
}