Функция бана не работает
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
).
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
-
b0n3Z
- phpBB 1.2.1
- Сообщения: 28
- Стаж: 17 лет 7 месяцев
Re: Функция бана не работает
Как проверить? скрипт ничем не отличается от стандартного из поставки phpbb 3.04.
-
b0n3Z
- phpBB 1.2.1
- Сообщения: 28
- Стаж: 17 лет 7 месяцев
Re: Функция бана не работает
Код: Выделить всё
1. $this->check_ban($this->data['user_id'], $this->ip);
2. $this->check_ban($this->data['user_id'], $ips);
3. function check_ban($user_id = false, $user_ips = false, $user_email = false, $return = false)
4. if (defined('IN_CHECK_BAN'))
5. define('IN_CHECK_BAN', 1);
6. if (empty($this->session_id) && defined('IN_CHECK_BAN'))
-
b0n3Z
- phpBB 1.2.1
- Сообщения: 28
- Стаж: 17 лет 7 месяцев
Re: Функция бана не работает
После месяца поисков, наконец-то нашел проблему. Она заключалась в таблице БД banlist. Полям ban_ip, email, reason были присвоены подтипы кодировок utf8_general_ci и не имелось значения по умолчанию.
Выражается благодарность rxu за его трату времени на форум.
-
rxu
- phpBB Guru

- Сообщения: 17273
- Стаж: 20 лет 4 месяца
- Откуда: Красноярск
- Благодарил (а): 633 раза
- Поблагодарили: 2413 раз
Re: Функция бана не работает
Да... этого я бы никакими тестами не выявил.
А в связи с чем произошло такое?
А в связи с чем произошло такое?
-
b0n3Z
- phpBB 1.2.1
- Сообщения: 28
- Стаж: 17 лет 7 месяцев
Re: Функция бана не работает
Без понятия. Возможно, проделки второго администратора. Возможно, из-за конвертации и нескольких переносов бд.rxu писал(а):Да... этого я бы никакими тестами не выявил.
А в связи с чем произошло такое?
-
Suhamor
- phpBB 1.0.0
- Сообщения: 3
- Стаж: 17 лет 5 месяцев
Re: Функция бана не работает
Народ, у меня тоже бан не работает.
Для проверки создал новую учётную запись, простого пользователя. Забаниваю - происходит разлогинивание забаненого юзера, но доступ к форуму у него остаётся.
Причём независимо от того, баню ли я по нику или по IP-адресу.
Как решить проблему? Что там с таблицей banlist сделать нужно?
Для проверки создал новую учётную запись, простого пользователя. Забаниваю - происходит разлогинивание забаненого юзера, но доступ к форуму у него остаётся.
Причём независимо от того, баню ли я по нику или по IP-адресу.
Как решить проблему? Что там с таблицей banlist сделать нужно?
-
rxu
- phpBB Guru

- Сообщения: 17273
- Стаж: 20 лет 4 месяца
- Откуда: Красноярск
- Благодарил (а): 633 раза
- Поблагодарили: 2413 раз
Re: Функция бана не работает
По крайней мере, проверьте кодировки полей и наличие/отсутствие у них значений по умолчанию.
-
Suhamor
- phpBB 1.0.0
- Сообщения: 3
- Стаж: 17 лет 5 месяцев
-
Suhamor
- phpBB 1.0.0
- Сообщения: 3
- Стаж: 17 лет 5 месяцев
Re: Функция бана не работает
Залез в базу данных через php My Admin.
Нашёл поля ban_ip, ban_email, ban_reason, ban_give_reason. В столбце "По умолчанию" напротив этих параметров ничего не было. Я выставил значения помолчанию - "0".
Кроме того, как я понял из сообщения пользователя b0n3z, проблема ещё в кодировках.
В частности, он написал следующее - "Полям ban_ip, email, reason были присвоены подтипы кодировок utf8_general_ci и не имелось значения по умолчанию."
У меня там стоят кодировки utf8_bin.
В связи с этим у меня 2 вопроса.
1. Какое должно быть значение по умолчанию у полей ban_ip, ban_email, ban_reason и ban_give_reason?
2. Какая кодировка должна быть у этих полей - utf8_bin или же какая-то другая?
Нашёл поля ban_ip, ban_email, ban_reason, ban_give_reason. В столбце "По умолчанию" напротив этих параметров ничего не было. Я выставил значения помолчанию - "0".
Кроме того, как я понял из сообщения пользователя b0n3z, проблема ещё в кодировках.
В частности, он написал следующее - "Полям ban_ip, email, reason были присвоены подтипы кодировок utf8_general_ci и не имелось значения по умолчанию."
У меня там стоят кодировки utf8_bin.
В связи с этим у меня 2 вопроса.
1. Какое должно быть значение по умолчанию у полей ban_ip, ban_email, ban_reason и ban_give_reason?
2. Какая кодировка должна быть у этих полей - utf8_bin или же какая-то другая?
-
rxu
- phpBB Guru

- Сообщения: 17273
- Стаж: 20 лет 4 месяца
- Откуда: Красноярск
- Благодарил (а): 633 раза
- Поблагодарили: 2413 раз
Re: Функция бана не работает
Suhamor
Попутный вопрос - вы на новую версию MySQL не переезжали перед тем как работать перестало?
Попутный вопрос - вы на новую версию MySQL не переезжали перед тем как работать перестало?
Ответ на этот вопрос дает схема БД:Suhamor писал(а):1. Какое должно быть значение по умолчанию у полей ban_ip, ban_email, ban_reason и ban_give_reason?2. Какая кодировка должна быть у этих полей - utf8_bin или же какая-то другая?
mysql_41_schemw.sql писал(а):CREATE TABLE phpbb_banlist (
ban_id mediumint(8) UNSIGNED NOT NULL auto_increment,
ban_userid mediumint(8) UNSIGNED DEFAULT '0' NOT NULL,
ban_ip varchar(40) DEFAULT '' NOT NULL,
ban_email varchar(100) DEFAULT '' NOT NULL,
ban_start int(11) UNSIGNED DEFAULT '0' NOT NULL,
ban_end int(11) UNSIGNED DEFAULT '0' NOT NULL,
ban_exclude tinyint(1) UNSIGNED DEFAULT '0' NOT NULL,
ban_reason varchar(255) DEFAULT '' NOT NULL,
ban_give_reason varchar(255) DEFAULT '' NOT NULL,
PRIMARY KEY (ban_id),
KEY ban_end (ban_end),
KEY ban_user (ban_userid, ban_exclude),
KEY ban_email (ban_email, ban_exclude),
KEY ban_ip (ban_ip, ban_exclude)
) CHARACTER SET `utf8` COLLATE `utf8_bin`;
-
mexanik
- phpBB 1.0.0
- Сообщения: 2
- Стаж: 13 лет 7 месяцев
Re: Функция бана не работает
Вижу, что тема уже достаточно старая, но создавать новую не решился, раз уже есть подобная.
На форуме перестала работать функция бана. Происходит примерно следующее. Я блокирую какого либо пользователя за спам, а он снова потом заходит на форум и свободно пишет. При этом он исключается из бан листа.
Полез в БД.
Поля ban_ip, ban_email, ban_reason и ban_give_reason были без значений по умолчанию. Проставил для этих полей нули, но это не помогло.
В качестве теста создал тестового пользователя. Сам же его заблокировал. При блокировке происходит его разлогирование, но он потом снова может свободно войти.
Над проблемой сижу уже несколько дней, но настал уже какой то ступор. Подскажите в каком направлении дальше копать.
На форуме перестала работать функция бана. Происходит примерно следующее. Я блокирую какого либо пользователя за спам, а он снова потом заходит на форум и свободно пишет. При этом он исключается из бан листа.
Полез в БД.
Поля ban_ip, ban_email, ban_reason и ban_give_reason были без значений по умолчанию. Проставил для этих полей нули, но это не помогло.
В качестве теста создал тестового пользователя. Сам же его заблокировал. При блокировке происходит его разлогирование, но он потом снова может свободно войти.
Над проблемой сижу уже несколько дней, но настал уже какой то ступор. Подскажите в каком направлении дальше копать.
-
RC86rus
- phpBB 1.0.0
- Сообщения: 4
- Стаж: 17 лет 7 месяцев
- Благодарил (а): 2 раза
Re: Функция бана не работает
Возможно кто-то из знающих откликнется:
Баню пользователя по нику, а он пишет и пишет, как будто ничего не произошло.
Забанил тестовый аккаунт для проверки: при входе надпись о том, что доступ закрыт и последующее разлогинивание. Написать ничего невозможно с тестового аккаунта после бана.
Но забаненный пользователь продолжает писать посты...
PS. Таблицу, в силу своих возможностей, проверил, порядок значений немного другой почему-то у меня.
Таблица во вложении.
Заранее благодарен за возможную помощь.
Баню пользователя по нику, а он пишет и пишет, как будто ничего не произошло.
Забанил тестовый аккаунт для проверки: при входе надпись о том, что доступ закрыт и последующее разлогинивание. Написать ничего невозможно с тестового аккаунта после бана.
Но забаненный пользователь продолжает писать посты...
PS. Таблицу, в силу своих возможностей, проверил, порядок значений немного другой почему-то у меня.
Таблица во вложении.
Заранее благодарен за возможную помощь.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
nissin
- phpBB 3.0.4
- Сообщения: 2229
- Стаж: 18 лет 9 месяцев
- Откуда: Астана
- Благодарил (а): 7 раз
- Поблагодарили: 344 раза
Re: Функция бана не работает
Посмотрел табличку, вроде в норме. Варианты:
1. пользователь является основателем
2. пользователь завёл себе новый ник со схожим написанием
1. пользователь является основателем
2. пользователь завёл себе новый ник со схожим написанием

