Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

/banip

Статус
В этой теме нельзя размещать новые ответы.

Springer

Новичок
Всем привет, выкладываю команду /banip с сохранением ипов в бд, думаю кому нибудь пригодится для вырезки в свой мод.

В public OnPlayerConnect:
Код:
new querr[60]; new ip[16]; GetPlayerIp(playerid, ip, 16);
mysql_format(connect, querr, sizeof(querr), "SELECT `ip` FROM `banip` WHERE `ip` = '%s'", ip);
mysql_function_query(connect, querr, true, "bancheck", "i", playerid);
В конец мода:
Код:
forward ban(playerid, ip[]);
public ban(playerid, ip[])
{
    new rows, fields;
    cache_get_data(rows, fields);
    if(rows) return SendClientMessage(playerid, 0xB7B7B7FF, "Данный IP уже заблокирован!");
    if(!rows)
    {
	new kek[54];
	mysql_format(connect, kek, sizeof(kek), "INSERT INTO `banip`(`ip`) VALUES ('%s')", ip);
	mysql_query(connect, kek);
	format(kek, sizeof(kek), "IP: %s забанен!", ip);
	SendClientMessage(playerid, 0x7D0000FF, kek);
    }
    return true;
}

forward bancheck(playerid);
public bancheck(playerid)
{
    new rows, fields;
    cache_get_data(rows, fields);
    if(rows)
    {
        SendClientMessage(playerid, 0x7D0000FF, "Ваш IP адрес находится в черном списке!");
	Kick(playerid);
    }
    return 1;
}
Ко всем командам:
Код:
CMD:banip(playerid, params[])
{
    if(PlayerInfo[playerid][pAdmin] >= 3) {
        if(sscanf(params,"s[16]", params)) return SendClientMessage(playerid, 0x7D0000FF, "USE: /banip [ip]");
	new streng[57];
	mysql_format(connect, streng, sizeof(streng), "SELECT `ip` FROM `banip` WHERE `ip` = '%s'", params[0]);
	mysql_function_query(connect, streng, true, "ban","ds", playerid, params[0]);
    }
    else SendClientMessage(playerid, 0x7D0000FF, "Недоступно!");
    return true;
}
БД:
Код:
CREATE TABLE IF NOT EXISTS `banip` (
`ip` varchar(16) COLLATE cp1250_bin NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=cp1250 COLLATE=cp1250_bin;
Ну вот и все, надеюсь кому то пригодится.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу