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

nexus505
Новичок

Какая у Вас версия MySQL? (P.S. Откройте через Pawno файл a_mysql.inc через путь .../pawno/include/a_mysql.inc)

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


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

up
При бане /ban идет запись в таблицу, а при входе в акк разбан, хотя я себя забанил на 30 дней.
При бане /offban идет краш сервера (не пингует сервер).

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


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

Можно удалить offban там нету ничего важного?

И только offban удалить кмд или еще чтото есть в моде?

И можно ли сделать оффбан  как на арз тип format --  /offban [Nick] [obnylenia (0/1)] [days] [Reason]  ???

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


Ссылка на сообщение
Поделиться на другие сайты
Cawfee
Великий Гуру
В 25.05.2020 в 15:49, Pirat сказал:

При бане /ban идет запись в таблицу, а при входе в акк разбан, хотя я себя забанил на 30 дней.

Забанили Вы себя. Данные о блокировке появились в базе данных. Заходите на сервер - данных о блокировке нет. В базе данных все равно указано, что Вы забанены. Так?

В 27.05.2020 в 21:08, Pirat сказал:

Можно удалить offban там нету ничего важного?

Что для Вас важно определяете сами. Если не нужна эта команда, сносите ее. 

 

В 27.05.2020 в 21:08, Pirat сказал:

И можно ли сделать оффбан  как на арз тип format --  /offban [Nick] [obnylenia (0/1)] [days] [Reason]  ???

Можно.

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


Ссылка на сообщение
Поделиться на другие сайты
Pirat
Свой человек
В 29.05.2020 в 11:59, odosenok сказал:

Забанили Вы себя. Данные о блокировке появились в базе данных. Заходите на сервер - данных о блокировке нет. В базе данных все равно указано, что Вы забанены. Так?

Что для Вас важно определяете сами. Если не нужна эта команда, сносите ее. 

 

Можно.

Здравствуйте, начнем с первого вопроса. Смотрите, я себя забанил по формату "/ban [id] [days] [Reason]" -> "/ban 0 30 1". В общий чат написали - Администратор Pirat[0] заблокировал аккаунт Pirat[0] на 30 дней. Причина: 1 и кикнуло. После я вышел из игры и зашел в базу данных, где увидел в таблице `banlist` свой ник и т.д. Я думал что все окей работает, решил перезайти и перепроверить все. Зашел в игру и мне написало - Ваш аккаунт успешно {00FF00}разблокирован! Вы можете продолжить игру!. Меня это смутило и я написал данную тему.

Далее 2 вопрос Ваш. Я не спец и не разбираюсь в павно. И не знаю что будет если я ее удалю, задену ли я какие то важные или не совсем функции или системы сервера.

Думаю что я ответил на все Ваши вопросы.

Update 
При коннекте в серверу есть проверки на бан скину в спойлере. Название проверок - "LoadBanList" "LoadBanIpList".Кто разбираться посмотрите. Оставлю две проверки на бан. Одна проверка на обычный бан а другой на бан по ип.
 

Спойлер

stock LoadBanList(playerid)
{
    new name[MAX_PLAYER_NAME], unbandate, dates[16],reason[128];
    new str[150],totalstr[600];
    GetPlayerName(playerid, sn, sizeof(sn));
    format(query, sizeof(query), "SELECT * FROM `banlist` WHERE `Name` = '%s'", sn);
    mysql_query(query);
    mysql_store_result();
    if(mysql_fetch_row(query) == 1)
    {
        mysql_fetch_row_format(query, "|");
        sscanf(query, "p<|>s[32]s[16]s[32]s[128]",name,dates,unbandate,reason);
        mysql_free_result();
        if(unbandate > gettime())
        {
            format(str, sizeof(str),"{FF6347}NICK:\t\t\t%s\n",name);
            strcat(totalstr, str);
            format(str, sizeof(str),"Дата бана:\t\t%s\n",dates);
            strcat(totalstr, str);
            format(str, sizeof(str),"Причина:\t\t%s",reason);
            strcat(totalstr, str);
            SPD(playerid,0,DIALOG_STYLE_MSGBOX,"Блокировка",totalstr,"Закрыть","");
            Kicked(playerid);
        }
        else
        {
            format(query, sizeof(query), "DELETE FROM `banlist` WHERE `Name` = '%s'",sn);
            mysql_query(query);
            SCM(playerid, COLOR_YELLOW, "Ваш аккаунт успешно {00FF00}разблокирован!{33FFFF} Вы можете продолжить игру!");
        }
        mysql_free_result();
    }
    return 1;
}

 

Спойлер

stock LoadBanIpList(playerid)
{
    new ip[16], endpos = 0;
    GetPlayerIp(playerid, ip, sizeof(ip));
    format(query, sizeof(query), "SELECT * FROM `baniplist` WHERE `IP` = '%s'", ip);
    mysql_query(query);
    mysql_store_result();
    if(mysql_fetch_row_format(query))
    {
        SCM(playerid, COLOR_LIGHTRED,"Ваш IP заблокирован!");
        Kicked(playerid);
        return 1;
    }
    mysql_free_result();
    //
    for(new i = 0; i < 2; i++)
    {
        endpos = strfind(ip, ".", true,endpos+1);
    }
    if(endpos != -1) strdel(ip, endpos, sizeof(ip));
    format(query, sizeof(query), "SELECT * FROM `baniplist` WHERE `IP` = '%s'", ip);
    mysql_query(query);
    mysql_store_result();
    if(mysql_fetch_row_format(query))
    {
        SCM(playerid, COLOR_LIGHTRED, "Ваш IP адрес заблокирован!");
        Kicked(playerid);
        return 1;
    }
    mysql_free_result();
    return 1;
}

 

 

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

Заметка от Cawfee , создано

3.2. Как правильно выкладывать код на форум рассказано в разделе "FAQ"

Устное предупреждение.

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


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

@Pirat, замените функцию следующей, проделайте все те же операции и покажите логи сервера.

Спойлер

 


stock LoadBanList(playerid)
{
	new name[MAX_PLAYER_NAME], unbandate, dates[16],reason[128];
	new str[150],totalstr[600];
	GetPlayerName(playerid, sn, sizeof(sn));
	format(query, sizeof(query), "SELECT * FROM `banlist` WHERE `Name` = '%s'", sn);
	mysql_query(query);
	mysql_store_result();
	if(mysql_fetch_row(query) == 1)
	{
		mysql_fetch_row_format(query, "|");
		printf("[LoadBanList]: %s", query);
		sscanf(query, "p<|>s[32]s[16]s[32]s[128]",name,dates,unbandate,reason);
		mysql_free_result();
		if(unbandate > gettime())
		{
			format(str, sizeof(str),"{FF6347}NICK:\t\t\t%s\n",name);
			strcat(totalstr, str);
			format(str, sizeof(str),"Дата бана:\t\t%s\n",dates);
			strcat(totalstr, str);
			format(str, sizeof(str),"Причина:\t\t%s",reason);
			strcat(totalstr, str);
			SPD(playerid,0,DIALOG_STYLE_MSGBOX,"Блокировка",totalstr,"Закрыть","");
			Kicked(playerid);
		}
		else
		{
			format(query, sizeof(query), "DELETE FROM `banlist` WHERE `Name` = '%s'",sn);
			mysql_query(query);
			SCM(playerid, COLOR_YELLOW, "Ваш аккаунт успешно {00FF00}разблокирован!{33FFFF} Вы можете продолжить игру!");
		}
		mysql_free_result();
	}
	return 1;
}

И какой тип данных в столбце с датой бана в таблице banlist?

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


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

@odosenok В столбце -  banlist  ~~~>  `Name`, `Date`, `Unbandata`, `Reason`.

Спойлер

[15:45:19] MySQL connected!
[15:45:19] Number of vehicle models: 0
[15:45:59] [connection] 176.122.98.4:59099 requests connection cookie.
[15:46:00] [connection] incoming connection: 176.122.98.4:59099 id: 0
[15:46:01] [join] Pirat has joined the server (0:176.122.98.4)
[15:46:17] [part] Pirat has left the server (0:2)
[15:46:37] [connection] incoming connection: 176.122.98.4:56742 id: 0
[15:46:47] [connection] incoming connection: 176.122.98.4:56745 id: 0
[15:46:48] [join] Pirat has joined the server (0:176.122.98.4)
[15:46:48] [LoadBanList]: Pirat|30.05.2020|1595076376|1 
[15:47:15] [part] Pirat has left the server (0:1)
[15:47:15] [connection] incoming connection: 176.122.98.4:56751 id: 0
[15:47:26] [connection] incoming connection: 176.122.98.4:56753 id: 0
[15:47:26] [join] Pirat has joined the server (0:176.122.98.4)
[15:47:27] [part] Pirat has left the server (0:2)

Так же я увидел проблему что в таблице `accounts` в столбце REGIP не идет туда запись ип. Там просто прописано "0". Бан по ип работает проверил. Но бан ип идет в другую таблицу. И да еще 1 вопрос можно как то добавить в таблицу `baniplist` ник админка кто забанил, а то там только ИП указан?

Отредактировано пользователем Pirat
Причина: + 1 вопрос

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


Ссылка на сообщение
Поделиться на другие сайты
Nekit_Krut18
𝒷𝓇𝒾𝑔𝒶𝒹𝒶 𝑜𝓃𝑒 𝓁𝑜𝓋𝑒

Короче, я изучал давно его мод, и с работой бана всё нормально, всё заносится и удаляется. Когда банишь, есть формула gettime() + 32 *84600, вроде такая. Но каким то образом, в бд даже если брать только gettime, то значение bantime меньше, как так? тобишь в бд время должно было получится больше чем gettime, поэтому его пропускает на сервер.

Спойлер

if(unbandate > gettime())
        {
            format(str, sizeof(str),"{FF6347}NICK:\t\t\t%s\n",name);
            strcat(totalstr, str);
            format(str, sizeof(str),"Дата бана:\t\t%s\n",dates);
            strcat(totalstr, str);
            format(str, sizeof(str),"Причина:\t\t%s",reason);
            strcat(totalstr, str);
            SPD(playerid,0,DIALOG_STYLE_MSGBOX,"Блокировка",totalstr,"Закрыть","");
            Kicked(playerid);
        }
        else
        {
            format(query, sizeof(query), "DELETE FROM `banlist` WHERE `Name` = '%s'",sn);
            mysql_query(query);
            SCM(playerid, COLOR_YELLOW, "Ваш аккаунт успешно {00FF00}разблокирован!{33FFFF} Вы можете продолжить игру!");
        }

 

 

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


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

@odosenok Я тут всповнил что я заменил плагин и инклуд mysql. Это может быть из за него? Я поменял на ту же версию и от того же автора. P.S. смотрел версию и автора в инклуде.

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


Ссылка на сообщение
Поделиться на другие сайты
Nekit_Krut18
𝒷𝓇𝒾𝑔𝒶𝒹𝒶 𝑜𝓃𝑒 𝓁𝑜𝓋𝑒
В 31.05.2020 в 23:21, Pirat сказал:

@odosenok Я тут всповнил что я заменил плагин и инклуд mysql. Это может быть из за него? Я поменял на ту же версию и от того же автора. P.S. смотрел версию и автора в инклуде.

Он тут не при чём, так как у вас в таблице получается дата разбана даже меньше gettime().

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


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

@Pirat, может быть перенести Вашу тему в "Стол заказов"? Думаю, там быстрее Вам помогут, правда, вероятно, на платной основе.

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


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

@Pirat в команде "/ban" в вычислении времени разбана ошибка, там не количество дней умножается на количество секунд в сутках (86400), а ник игрока. Попробуйте с таким вариантом: 

Спойлер

CMD:ban(playerid,params[])
{
    AdminCommand(3);
    new nsa[120];
    if(sscanf(params,"ids[60]",params[0], params[1], params[2])) return SCM(playerid, COLOR_GREY, "Используйте: /ban [id] [дни] [причина]");
    if(params[1] < 1 || params[1] > 30) return SCM(playerid, COLOR_GREY, "Нельзя меньше 1 и больше 30!");
    GetPlayerName(params[0], gp, sizeof(gp));
    new ip[16];
    GetPlayerIp(params[0], ip, sizeof(ip));
    GetPlayerName(playerid, sn, sizeof(sn));
    com
    format(nsa,128,"Администратор %s[%d] заблокировал аккаунт %s на %d дней. Причина: %s",sn, playerid, gp, params[1],params[2]);
    SCMToAll(COLOR_LIGHTRED,nsa);
    new Hour, Minute, Second,Year, Month, Day;
    getdate(Year, Month, Day), gettime(Hour, Minute, Second);
    new slip[16];
    GetPlayerIp(params[0], slip, sizeof(slip));
    format(nsa, sizeof(nsa), "[A] [IP: %s] REG-IP: [%s]",slip, info[params[0]][pRegIP]);
    SCM(playerid, COLOR_LIGHTRED,nsa);
    new unbandate = gettime() + params[1]*86400;
    new data[16];
    format(data, 16, "%02d.%02d.%02d",Day,Month,Year);
    format(query, sizeof(query), "INSERT INTO `banlist` (`Name`, `Date`, `Unbandata`, `Reason`) VALUE ('%s', '%s', '%i', '%s')",gp,data,unbandate,params[2]);
    mysql_query(query);
    Kicked(params[0]);
    ainfo[playerid][aBan] ++;
    return 1;
}

 

 

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


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

АВТОМАТИЧЕСКИ СФОРМИРОВАННОЕ СООБЩЕНИЕ:

Данная тема была перемещена модерацией или администрацией портала PAWNO-RUS.RU! 

Перемещена из: "Скриптинг PAWN > Вопросы / проблемы по скриптингу"

Перемещена в: "Магазин > Стол заказов"

 

С уважением, ваш Бот! 

Если вы НЕ согласны с переносом данной темы в раздел "Магазин > Стол заказов", пожалуйтесь на это сообщение в жалобе указав причины вашего недовольства. Спасибо. 

 

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


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.

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

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

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

    • Андрей Лазарев
      От Андрей Лазарев
      ROSTOV-HOST.RU - Современный Хостинг Игровых Серверов по невероятно низким ценам и удобной панелью управления 

      — Защита от DDoS-атак 
      — Бесплатная техническая поддержка 
      — Доступ в панель управления и личный кабинет 
      — Переустановка игрового сервера в любое время суток 
      — Редактирование конфигурационных файлов игрового сервера 
      — FTP доступ к файлам игрового сервера 
      — Мониторинг процессов 
      — Изменение количества слотов игрового сервера 
      — Система управления счетами и оплаты услуг 
      — Локальная MySQL база данных 
      — Автоустановка модов
      — Смена (версии / игры) сразу в панели управления


      Цены: с помесячной оплатой
      — GTA: SAMP              - 1слот / 0.40копп.
      — GTA: CRMP              - 1слот / 0.40копп.
      — GTA: MTA                 - 1слот / 0.80копп.
      — GTA: United MP       - 1слот / 0.80копп.
      — MineCraft: PE           - 1слот / 3.00копп.
      — MineCraft                  - 1слот / 5.00копп.
      — Counter Strike 1.6    - 1слот / 4.00копп.
       
      Цены: плати один раз пользуйся до скончания веков
      — 1 200 руб / SA:MP 0.3е/ CR:MP 0.3е/ МТА /    500 слотов
      — 1 800 руб / SA:MP 0.3.7/ CR:MP 0.3.7/ МТА /    1000 слотов
       

      Сайт: https://rostov-host.ru
      Группа в VK: https://vk.com/rostov_host
       
       
    • 9at0z
      От 9at0z
      Flatgame.ru - Хостинг игровых серверов. Gta SAMP: 0.50коп/слот Gta СRMP: 0.50коп/слот MTA: 0.50коп/слот Minecraft: 5руб/слот Counter Stire 1.6: 7руб/слот Все сервера с автоусновкой модов, которые есть доступны. Обширная панель управления сервером. Тестовый периуд 3 дня. И очень много чего интересного!

    • FanVan
      От FanVan

       
      Дешевый хостинг серверов SAMP, CRMP, Minecraft: Java & Bedrock Edition
       
      Помогаем запуститься начинающим проектам без больших вложений.
      Сделаем так, чтобы твои затраты на хостинг уменьшились без потери качества.
       
      Размещаем серверы в Хельсинках, Финляндия на процессоре частотой до 4.8 ГГц и NVMe диске.
      У нас нет красивого сайта, покупка услуг производится через бота в ЛС группы, а управление сервером -- посредством панели Pterodactyl.
      Мы не ограничиваем тебя слотами: все тарифы -- это маленькие компьютеры, ты волен сам устанавливать максимальное количество игроков, без повышения стоимости.
       
      К нам обращаются, когда хостинг начинает съедать большую часть бюджета из-за того, что хостер захотел выпендриться и добавил бесполезный функционал. Но лучше обратиться еще в начале, чтобы уменьшить затраты на хостинг и вложить как можно больше в рекламу.
       
      Никто не идеален, ничто не идеально: мы не можем помочь
      если у тебя высоконагруженный проект если тебе требуется защита от DDOS если тебе нужен пинг -1 если тебе важна автоустановка модов  
      Но ты можешь написать нам в тех. поддержку и, возможно, мы подберем более мощный тариф на отдельном сервере персонально для тебя по цене ниже, чем у других.
       
      Мы стремимся сделать создание сервера доступным каждому. Если остались вопросы или хочешь протестировать оборудование, напиши нам в ЛС группы.
    • Groos
      От Groos

      Качественный игровой хостинг серверов SAMP, CRMP, MTA
       
       
      О нашем хостинге
      - SafePlay - Наш хостинг богат инструментами и различными дополнениями для управления серверами, готовыми сборками модов для автоматической установки серверов SAMP, Нашей панелью управления справиться как и профи, так и новичок. Наши отличные и отзывчивые специалисты(администрация) рады помочь Вам в любую трудную минуту (в том числе по игровой сборке мода,  UCP-сайта или Форумом). Наш хостинг использует надежное и качественное оборудование. Минимальным ping по всей России. Открытая характеристика и статистика хостинга.
        Что мы предлагаем?        - На нашем проекте SafePlay Вы можете создать сервер по справедливым ценам:
      SAMP (LITE) - 0,50 руб/ слот SAMP (VIP) - 1 руб/ слот CRMP - 1 руб / слот MTA - 1 руб / слот
        Ритуал открытия
      - Официальное открытие нашего игрового хостинга: 01.08.2021! В связи с этим, на нашем хостинге присутствует(временная функция) тестирование игрового хостинга (с периодом 15 дней). Для того чтобы активировать данный сервер, Вам достаточно пройти процедуру регистрации >> в разделе "Сервера" >> Заказать сервер "San Andreas: Multiplayers" (за 1 рубль, который вам выдается при регистрации аккаунта). 
        Выслушаем всех!
      - В данной теме, хотелось бы прочитать отзывы, критики а так же пожелания независимых экспертов или бета-тестировщиков. Рады будем любому комментарию, заранее спасибо за внимание, команда администрации SafePlay
    • f0295655
      От f0295655

      _______________________________________________
      VM-HOSTING.COM
      Качественный хостинг для вашего проекта, качественные сервера с защитой от DDoS аттак.
      Мы предоставляем услуги:
      VDS/VPS хостинга
      Web хостинга
      Игрового хостинга(SAMP, CRMP, MINECRAFT)
      _______________________________________________
      ТАРИФЫ
      XEON E5-2680v2
      Strix / 1 vCore / 2 GB RAM / 25 GB SSD / до 1 Gbit/s - 350Руб (28 дней)
      Duende / 2 vCore / 4 GB RAM / 40 GB SSD / до 1 Gbit/s - 650Руб (28 дней)
      Lynx / 4 vCore / 8 GB RAM / 50 GB SSD / до 1 Gbit/s - 1200Руб (28 дней)
      Devil / 8 vCore / 16 GB RAM / 80 GB SSD / до 1 Gbit/s - 1200Руб (28 дней)
      Drake / 10 vCore / 32 GB RAM / 120 GB SSD / до 1 Gbit/s - 3100Руб (28 дней)

      INTEL i7-8700K
      Strix / 1 vCore / 2 GB RAM / 25 GB SSD / до 1 Gbit/s - 450Руб (28 дней)
      Duende / 2 vCore / 4 GB RAM / 40 GB SSD / до 1 Gbit/s - 850Руб (28 дней)
      Lynx / 2 vCore / 8 GB RAM / 50 GB SSD /  до 1 Gbit/s - 1200Руб (28 дней)
      Devil / 4 vCore / 16 GB RAM / 80 GB SSD / до 1 Gbit/s - 1200Руб (28 дней)
      Drake / 6 vCore / 24 GB RAM / 120 GB SSD / до 1 Gbit/s - 2799Руб (28 дней)
      _______________________________________________
      ПРЕИМУЩЕСТВА
      Многофункциональная и удобная панель управления
      Высокоскоростные диски NVME SSD
      Высокоскоростные интернет каналы 
      Оптимальный пинг по всему миру
      Качественное оборудование
      Отзывчивая тех.поддержка
      _______________________________________________
      Ссылка на хостинг: Жмяк
      Vk: Жмяк 
      Telegram: Жмяк
      Отзывы: Жмяк
      _______________________________________________
      Начало работы хостинга 01.01.2023
       
       
      Промокод 10% - #FORUM10