Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

Как автоматически включить для всех уведомления на e-mail?

Вопросы без привязки к версии. Установлена авточистка (2 года).
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12353
Стаж: 12 лет 7 месяцев
Благодарил (а): 222 раза
Поблагодарили: 3508 раз
Контактная информация:

Re: Как автоматически включить для всех уведомления на e-mail?

Сообщение Татьяна5 »

Это вручную, удалить и создать заново
Из бекапа тогда и код для создания таблицы заодно достаньте (нечто вроде CREATE TABLE ...)
TomRX
phpBB 1.4.4
Сообщения: 133
Стаж: 5 лет 2 месяца
Откуда: Tomsk
Благодарил (а): 30 раз
Поблагодарили: 5 раз
Контактная информация:

Re: Как автоматически включить для всех уведомления на e-mail?

Сообщение TomRX »

Код: Выделить всё

CREATE TABLE `phpbb3_user_notifications` (
  `item_type` varchar(165) COLLATE utf8_bin NOT NULL DEFAULT '',
  `item_id` int(10) unsigned NOT NULL DEFAULT 0,
  `user_id` int(10) unsigned NOT NULL DEFAULT 0,
  `method` varchar(165) COLLATE utf8_bin NOT NULL DEFAULT '',
  `notify` tinyint(1) unsigned NOT NULL DEFAULT 1,
  UNIQUE KEY `itm_usr_mthd` (`item_type`,`item_id`,`user_id`,`method`),
  KEY `user_id` (`user_id`),
  KEY `uid_itm_id` (`user_id`,`item_id`),
  KEY `usr_itm_tpe` (`user_id`,`item_type`,`item_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
Этот код?
А как после создания новой таблицы поместить в новую таблицу ее старое содержание?
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12353
Стаж: 12 лет 7 месяцев
Благодарил (а): 222 раза
Поблагодарили: 3508 раз
Контактная информация:

Re: Как автоматически включить для всех уведомления на e-mail?

Сообщение Татьяна5 »

Этот
Потом снова восстановить таблицу из бекапа, как уже делали
TomRX
phpBB 1.4.4
Сообщения: 133
Стаж: 5 лет 2 месяца
Откуда: Tomsk
Благодарил (а): 30 раз
Поблагодарили: 5 раз
Контактная информация:

Re: Как автоматически включить для всех уведомления на e-mail?

Сообщение TomRX »

Вау!!! Мне удалось пересоздать эту таблицу полностью, и так, что теперь она легко оптимизируется и не зависает!
Спасибо всем за подсказки!!!

Да, я понимаю конечно, что эта таблица не нуждается в оптимизации, но когда я в phpMyAdmin оптимизирую таблицы, я выделяю не таблицы, которые нуждаются в оптимизации, не выборочно, а сразу нажимаю "Выделить все", и потом "Оптимизировать таблицу" - и они все без исключения оптимизируются одновременно. После обновления платформы сервера при выполнении этих операций начались глюки, зависания и тормоза. Теперь проблема решена, это снова стало возможно, все таблицы оптимизируются легко и быстро.

Отправлено спустя 2 часа 41 минуту 41 секунду:
И всё-таки эта таблица - phpbb3_user_notifications - особенная... ведет себя не так как другие таблицы.
Она сейчас легко оптимизируется только в той версии phpMyAdmin, в которой я ее пересоздал.
Попробовал из другой версии phpMyAdmin сделать то же самое - фиг вам... не оптимизируется и виснет.

И еще. Возможно это важно. Из моих наблюдений.
В таблицу phpbb3_user_notifications при каждой регистрации делаются записи, добавляются строки. Но далеко не все регистрации (юзеры, их id) остаются на форуме, в базе данных, в таблице юзеров.
Вот сейчас была регистрация очередного спамера-хрумера - я его естественно удалил, в таблице юзеров его нет и id его там больше нет, однако в таблице phpbb3_user_notifications все эти записи об уведомлении даже удалённых юзеров - существуют и накапливаются постоянно, таких записей уже не существующих юзеров много, очень много.

Позавчера удалил несколько спамеров, вчера, сегодня, в таблице пользователей их нет, а в таблице phpbb3_user_notifications все их id присутствуют, и везде проставлены галочки об их уведомлении.
То есть так или иначе нужен инструмент, который бы мог работать с этой таблицей, и мог бы привести ее в соответствие с таблицей юзеров, чтобы в ней не хранилось огромное число давно несуществующих id пользователей. А такого инструмента, увы, пока нет.
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 1 месяц
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2752 раза
Контактная информация:

Re: Как автоматически включить для всех уведомления на e-mail?

Сообщение Sheer »

Сервер базы данных: MySQL(i) 5.7.16
Версия phpBB: 3.2.7
Сжатие GZip: Отключено
Тип базы данных: mysqli
Версия php: 7.1.0
Все нормально отимизируется, хотя в этом нет никакой необходимости. Совсем нет. Я не понимаю, зачем это делать!
Сконверитруйте таблицы в InnoDB и забудьте про оптимизацию и дефрагментацию таблиц.
tomskafo писал(а): 27.07.2019 13:27 Позавчера удалил несколько спамеров
Как удалял-то? Только что проверил - создал пользователя, посмотрел в таблице _user_notifications, записи есть, удалил пользователя, записи для его ИД в таблице _user_notifications исчезли. То есть все работает штатным образом, никаких велосипедов изобретать не надо.
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
TomRX
phpBB 1.4.4
Сообщения: 133
Стаж: 5 лет 2 месяца
Откуда: Tomsk
Благодарил (а): 30 раз
Поблагодарили: 5 раз
Контактная информация:

Re: Как автоматически включить для всех уведомления на e-mail?

Сообщение TomRX »

А у меня не исчезают, иначе я бы не писал об этой проблеме.
Вот скрин содержимого таблицы (ее конец) - тут можно видеть юзеров id=13850 и id=13849
А между тем у меня сейчас последний зарегистрированный на форуме - ляська - id=13847

а эти id=13850 и id=13849 удалены, спамеры, их нет в таблице юзеров, но они есть у меня в таблице phpbb3_user_notifications

Как удаляю? А разве есть какие-то изощренные способы? Если по одному, то из аккаунта пользователя в самом низу:
Удалить пользователя:
Учтите, что удаление пользователя необратимо, он не может быть восстановлен. Непрочитанные личные сообщения, отправленные данным пользователем, также будут удалены и не будут доступны получателям.
Кнопка "Отправить".

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

Отправлено спустя 9 минут 14 секунд:
На форум поддержки phpBB я обратился не просто так, а потому что действительно проблема.
Вот скрин таблицы юзеров (ее конец).
Если знаете - объясните мне, почему у меня записи в таблице уведомлений сохраняются и накапливаются, а в таблице юзеров этих id давно нет.
Я этого не понимаю. И решить самостоятельно эту проблему пока не могу.

Отправлено спустя 4 минуты 53 секунды:
А между id=13820 и id=13847 я сегодня вручную из таблицы поудалял, т.к. на форуме их нет, это вчерашние массовые регистрации хрумера - у них вчера-позавчера вышла новая версия программы.
все эти id были в таблице уведомлений один за другим, а в таблице юзеров их не было сразу же после их удаления.
Вложения
333344446.JPG
2223334445.jpg
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 1 месяц
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2752 раза
Контактная информация:

Re: Как автоматически включить для всех уведомления на e-mail?

Сообщение Sheer »

tomskafo писал(а): 27.07.2019 14:48 А между id=13820 и id=13847 я сегодня вручную из таблицы поудалял
Результат на лице :P
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12353
Стаж: 12 лет 7 месяцев
Благодарил (а): 222 раза
Поблагодарили: 3508 раз
Контактная информация:

Re: Как автоматически включить для всех уведомления на e-mail?

Сообщение Татьяна5 »

tomskafo писал(а): 27.07.2019 14:48 вручную из таблицы
От них огромное количество "хвостов" теперь в БД
Вычищайте вручную
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 1 месяц
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2752 раза
Контактная информация:

Re: Как автоматически включить для всех уведомления на e-mail?

Сообщение Sheer »

Татьяна5 писал(а): 27.07.2019 15:20 Вычищайте вручную
Замучается. В добавок, не зная структуру БД, вообще безнадежно :|
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12353
Стаж: 12 лет 7 месяцев
Благодарил (а): 222 раза
Поблагодарили: 3508 раз
Контактная информация:

Re: Как автоматически включить для всех уведомления на e-mail?

Сообщение Татьяна5 »

Как вариант - добавить вручную записи под удалёнными id в _users и удалить их потом стандартно
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16306
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 532 раза
Поблагодарили: 2116 раз
Контактная информация:

Re: Как автоматически включить для всех уведомления на e-mail?

Сообщение rxu »

Татьяна5 писал(а): 27.07.2019 15:20 От них огромное количество "хвостов" теперь в БД
Автор и говорит о том, что удаляет "хвосты" в таблице уведомлений, а не пользователей вручную удаляет.
tomskafo писал(а): 27.07.2019 14:48 почему у меня записи в таблице уведомлений сохраняются и накапливаются, а в таблице юзеров этих id давно нет.
При удалении пользователей данные о них из таблицы уведомлений также должны автоматически удаляться.
У вас не удаляются ни для каких пользователей?
Изображение
TomRX
phpBB 1.4.4
Сообщения: 133
Стаж: 5 лет 2 месяца
Откуда: Tomsk
Благодарил (а): 30 раз
Поблагодарили: 5 раз
Контактная информация:

Re: Как автоматически включить для всех уведомления на e-mail?

Сообщение TomRX »

А между id=13820 и id=13847 я сегодня вручную из таблицы поудалял
Вручную поудалял из таблицы phpbb3_user_notifications разумеется.

При удалении пользователей на форуме данные о них удаляются только в таблице юзеров, но не в таблице phpbb3_user_notifications.
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16306
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 532 раза
Поблагодарили: 2116 раз
Контактная информация:

Re: Как автоматически включить для всех уведомления на e-mail?

Сообщение rxu »

tomskafo писал(а): 27.07.2019 17:45 данные о них удаляются только в таблице юзеров, но не в таблице phpbb3_user_notifications.
Связанные с этим ошибки в логах вебсервера или сервера СУБД есть?

Отправлено спустя 29 секунд:
И какая версия phpBB?
Изображение
TomRX
phpBB 1.4.4
Сообщения: 133
Стаж: 5 лет 2 месяца
Откуда: Tomsk
Благодарил (а): 30 раз
Поблагодарили: 5 раз
Контактная информация:

Re: Как автоматически включить для всех уведомления на e-mail?

Сообщение TomRX »

версия форума 3.2.5
про логи не знаю... но глюки наблюдаются на форуме в последние две недели:
-то меня и других пользователей неожиданно выкидывает из системы, и приходится заново авторизоваться;
- то вдруг неожиданно я замечаю, войдя на форум под своим логином, что вверху справа не моя аватарка, а моего напарника или кого-то другого из пользователей (то есть оказываюсь как бы в чужом аккаунте против своей воли) - про такую неожиданную подмену аккаунтов мне и напарник мой говорил, что пару раз видел себя неожиданно в моем аккаунте, то есть вверху справа моя была аватарка, и т.п.
Ранее такого у нас не наблюдалось, пока хостеры пару недель назад не обновили платформу сервера, и связанные с этим настройки.
Но накапливались ли в phpbb3_user_notifications пользователи до обновления хостерами сервера - не могу сказать, не знаю.
Ответить

Вернуться в «phpBB-пространство»