• Уважаемый Гость.
    - Прежде чем создать свою тему, пожалуйста, попробуй воспользоваться этим -> ПОИСКОМ !!!
    - После решения Вашего вопроса (проблемы) - нажмите "Лучший ответ", на сообщении, которое его решило. За игнорирование этого действия - Вы получите соответствующее предупреждение. Мы - стараемся Вам помочь. Уделите 10 секунд - чтобы нажать кнопку. (Если у Вас нет такой возможности - укажите в последнем своем сообщении какой ответ Вы считаете лучшим. Наши модераторы сделают это за Вас)
    ЗАПРЕЩЕНО:
    - Cоздавать темы с названиями "Помогите", "Плиз", "Ошибка", "Не могу найти", "Хелп" и тому подобное;
    - Cоздавать темы без детального описания того, что нужно исправить.
    - Cоздавать темы из одного скриншота.
    За игнор правил форума - Ваша тема будет удалена, а Вы получите системное предупреждение.

Как сделать систему проверки бана на MySQL R41?

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

WinstonJ

Нуль
Регистрация
7 Июн 2019
Сообщения
2
Лучшие ответы
0
Репутация
0
Парни, кому не жалко, кто сможет скинуть систему проверки бана на MySQL R41. Команду написал, а вот проверку никак. :(
PHP:
CMD:ban(playerid, params[])
{
    if(player_info[playerid][ADMIN] < 3) return 1;
    if(sscanf(params, "ddS()[26]", params[0], params[1], params[2])) return SCM(playerid, COLOR_GREY, "Используйте: /ban [id] [срок] [причина]");
    if(GetPVarInt(params[0], "logged") != 1) return SCM(playerid, COLOR_GREY, "Игрок не авторизован");
    if(params[1] < 1 || params[1] > 30) return SCM(playerid, COLOR_GREY, "Срок бана от 1 до 30 дней");
    new string[128];
    if(!strlen(params[2]))
    {
        format(string, sizeof(string), "Администратор %s забанил игрока %s на %d дней.", player_info[playerid][NAME], player_info[params[0]][NAME], params[1]);
    }
    else
    {
        format(string, sizeof(string), "Администратор %s забанил игрока %s на %d дней. Причина: %s", player_info[playerid][NAME], player_info[params[0]][NAME], params[1], params[2]);
    }
    SCMTA(COLOR_LIGHTRED, string);
    new dialog[310];
    new Year, Month, Day;
    getdate(Year, Month, Day);
    new monthname[9];
    switch(Month)
    {
        case 1: monthname = "января";
        case 2: monthname = "февраля";
        case 3: monthname = "марта";
        case 4: monthname = "апреля";
        case 5: monthname = "мая";
        case 6: monthname = "июня";
        case 7: monthname = "июля";
        case 8: monthname = "августа";
        case 9: monthname = "сентября";
        case 10: monthname = "октября";
        case 11: monthname = "ноября";
        case 12: monthname = "декабря";
    }
    new unban = gettime() + 86400*params[1];
    new Hour, Minute, Second;
    gettime(Hour, Minute, Second);
    new query[234];
    if(player_info[params[0]][ADMIN] != 0)
    {
        player_info[playerid][ADMIN] = 0;
        format(query, sizeof(query), "UPDATE `accounts` SET `admin` = '0' WHERE `id` = '%d' LIMIT 1", player_info[playerid][ID]);
        mysql_tquery(dbHandle, query, "", "");

    }
    format(query, sizeof(query), "INSERT INTO `bans` (`name`, `bandate`, `unbandate`, `bantime`, `admin`, `reason`) VALUES ('%s', '%d-%02d-%02d', '%d', '%02d:%02d:%02d', '%s', '%s')", player_info[params[0]][NAME], Year, Month, Day, unban, Hour, Minute, Second, player_info[playerid][NAME], params[2]);
    mysql_tquery(dbHandle, query, "", "");
    format(dialog, sizeof(dialog), "{FFFFFF}Дата: %02d %s %d г.\nВаш ник: %s\nНик администратора: %s.\nКоличество дней: %d\nПричина: %s\n\n{b0ef71}Если вы не согласны с наказанием, сделайте скриншот (F8)\nи оставьте жалобу на форуме.", Day, monthname, Year, player_info[params[0]][NAME], player_info[playerid][NAME], params[1], params[2]);
    SPD(params[0], 89, DIALOG_STYLE_MSGBOX, "{dd605f}Бан аккаунта", dialog, "Закрыть", "");
    Kick(params[0]);
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу