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

Перенос тем со старого форума на новый

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

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Leo Angel
phpBB 2.0.4
Сообщения: 425
Стаж: 6 лет 3 месяца
Благодарил (а): 153 раза
Поблагодарили: 34 раза

Перенос тем со старого форума на новый

Сообщение Leo Angel »

Есть старый форум со множеством интересных и нужных тем, которые хотелось бы перенести на вновь созданный форум.
Версия старого форума 3.3.5, нового 3.3.10.
Тем много - порядка нескольких сотен. В принципе, из всех тем нужно только первое сообщение.
Можно ли как-то просто перенести эту информацию на новый ресурс?
Ну так, чтобы не вручную копировать каждую тему, а как-то сразу все и автоматически?
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12454
Стаж: 12 лет 9 месяцев
Благодарил (а): 166 раз
Поблагодарили: 2482 раза

Re: Перенос тем со старого форума на новый

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

Для начала обновить всё на одну версию и прорепарсить, а потом написать скрипт для переноса (голосовалки, вложения, авторство сообщений... копипастом внутри БД будет дольше, чем скриптом)
Аватара пользователя
Leo Angel
phpBB 2.0.4
Сообщения: 425
Стаж: 6 лет 3 месяца
Благодарил (а): 153 раза
Поблагодарили: 34 раза

Re: Перенос тем со старого форума на новый

Сообщение Leo Angel »

Голосовалок нет, вложений нет, сообщения нужны только одного автора.
Обновлять старый форум тяжело, там много правок в ядре, много самописного.
Боюсь что-то поломать. Старый форум остаётся памятником. Там нет регистрации и нет входа для пользователей, можно только читать.
Такая, своего рода, библиотека.

Поэтому, ... вот!
Такая вот проблема. :cry:
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12454
Стаж: 12 лет 9 месяцев
Благодарил (а): 166 раз
Поблагодарили: 2482 раза

Re: Перенос тем со старого форума на новый

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

Тогда по факту из 2-х таблиц можно перетащить, сообщения и темы, но для начала подготовить структуру таблиц (расширения её меняют) и данные под новый форум
https://www.phpbbguru.net/database/tables/phpbb-posts/
post_id - другие будут, с учётом последнего id на новом форуме
topic_id - тоже другие, и плюс ещё связь с _topics не сломать
forum_id - заранее подготовить форумы для переноса и тогда там менять
poster_id - полагаю, туда "гостя" с нового форума
post_username - если не заполнено, то заполнить никами из _users старого форума до замены poster_id
post_edit_* проще сбросить

https://www.phpbbguru.net/database/tables/phpbb-topics/
topic_id - меняем, также, как в _posts
forum_id - сюда подготовленные форумы
topic_poster - сюда гостя
topic_first_post_id - меняем по правилам для id сообщений
topic_last_post_id - аналогично
topic_moved_id... под вопросом, надо смотреть есть ли заполненные
topic_bumped, topic_bumper, poll_* - сброс
И где-то там ещё были id авторов первого и последнего сообщения...

Это очень-очень примерный принцип подготовки переноса на новый форум. Вручную там ювелирная работа получается, особенно с id форумов чтобы никакие и никак не пересеклись
Аватара пользователя
Leo Angel
phpBB 2.0.4
Сообщения: 425
Стаж: 6 лет 3 месяца
Благодарил (а): 153 раза
Поблагодарили: 34 раза

Re: Перенос тем со старого форума на новый

Сообщение Leo Angel »

:shock:
Татьяна5, спасибо!
Буду разбираться...
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16384
Стаж: 18 лет
Откуда: Красноярск
Благодарил (а): 524 раза
Поблагодарили: 1749 раз

Re: Перенос тем со старого форума на новый

Сообщение rxu »

В "ручном" варианте практически невозможно нормально перенести. Самый реальный способ - вынимать из старой базы первые сообщения SQL запросами, депарсить их с помощью, например, generate_text_for_edit() и затем постить их на новом форуме в новые темы с помощью submit_post().
Изображение
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12454
Стаж: 12 лет 9 месяцев
Благодарил (а): 166 раз
Поблагодарили: 2482 раза

Re: Перенос тем со старого форума на новый

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

Скриптом по той "ручной" схеме реально, когда обработка идёт по одному сообщению за раз. И генерировать в результате sql в файл
На встроенных функциях на более-менее большом объёме по таймауту всё падать начнёт
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16384
Стаж: 18 лет
Откуда: Красноярск
Благодарил (а): 524 раза
Поблагодарили: 1749 раз

Re: Перенос тем со старого форума на новый

Сообщение rxu »

Слишком много взаимосвязей между таблицами надо учесть, что-нибудь где-нибудь да упустишь. Со встроенными не упустишь ничего.
Изображение
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12454
Стаж: 12 лет 9 месяцев
Благодарил (а): 166 раз
Поблагодарили: 2482 раза

Re: Перенос тем со старого форума на новый

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

rxu, нет там особо взаимосвязей, если на гостя всё записывать. А статистики всякие и поисковые индексы проще потом синхронизировать

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