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

Конвертация цитат phpBB 3.0.x -> 3.2.x

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

Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB 3.1.x/3.2.x | FAQ | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
is_pronin
phpBB 1.4.1
Сообщения: 41
Стаж: 5 лет 10 месяцев
Благодарил (а): 9 раз

Конвертация цитат phpBB 3.0.x -> 3.2.x

Сообщение is_pronin »

Всем привет!
Возникла необходимость сконвертировать цитаты быстрого ответа phpBB 3.0.x вида:

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

[quote="111";p="222"][/quote]
в цитаты phpBB 3.2.x вида:

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

[quote=test post_id=222 time=0123 user_id=111]
В голову приходит только сложный SQL запрос с поиском подстроки, регуляркой, вложенными select-ами и прочими извращениями. Наверняка этот вопрос уже поднимался на форуме, но поиск ничего не дал. Возможно уже есть готовое решение?
Аватара пользователя
Pazh
Former team member
Сообщения: 2317
Стаж: 14 лет 5 месяцев
Благодарил (а): 37 раз
Поблагодарили: 261 раз

Re: Конвертация цитат phpBB 3.0.x -> 3.2.x

Сообщение Pazh »

is_pronin, совет - не изобретайте велосипед и обновите форум с 3.0 на 3.2.5. Одним репарсингом не обойдетесь - эти post_id, time и user_id обрабатывать, т.е. переписывать обработку bbcode quote
Помощь в ЛС/email только за WM или ЮMoney
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2209
Стаж: 16 лет 4 месяца
Откуда: Павлодар
Благодарил (а): 5 раз
Поблагодарили: 153 раза

Re: Конвертация цитат phpBB 3.0.x -> 3.2.x

Сообщение nissin »

is_pronin, как-то писал cli расширение для замены. Регулярка такая там:

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

$new_post_text = preg_replace('/\[quote="([^"]+)";p="(\d+)"\]/iu', '[quote="${1}" post_id="${2}"]', $row['post_text']);
Если умеете пользоваться cli причешу и выложу.
Всё повторяется. nurlan.info
is_pronin
phpBB 1.4.1
Сообщения: 41
Стаж: 5 лет 10 месяцев
Благодарил (а): 9 раз

Re: Конвертация цитат phpBB 3.0.x -> 3.2.x

Сообщение is_pronin »

Pazh писал(а): 04.03.2019 22:14 is_pronin, совет - не изобретайте велосипед и обновите форум с 3.0 на 3.2.5
Так я и собираюсь обновить, осталось только придумать решение с преобразованием старых цитат к новому виду. Или вы предлагаете забить на все старые цитаты и получить месиво в постах?
Pazh писал(а): 04.03.2019 22:14 Одним репарсингом не обойдетесь - эти post_id, time и user_id обрабатывать, т.е. переписывать обработку bbcode quote
Ничего не понял... Зачем переписывать обработку bbcode? Они и так всё прекрасно обрабатывают. Мне нужно просто привести старые цитаты к новому виду, чтоб не писать отдельно расширение, которое будет преобразовывать их на лету.
is_pronin
phpBB 1.4.1
Сообщения: 41
Стаж: 5 лет 10 месяцев
Благодарил (а): 9 раз

Re: Конвертация цитат phpBB 3.0.x -> 3.2.x

Сообщение is_pronin »

nissin писал(а): 04.03.2019 22:18 Если умеете пользоваться cli причешу и выложу.
Был бы премного благодарен!
Интересно, а остальные что, просто обновлялись с потерей всех предыдущих цитат?
Аватара пользователя
Sumanai
phpBB 3.0.0 RC5
Сообщения: 1668
Стаж: 9 лет 5 месяцев
Благодарил (а): 257 раз
Поблагодарили: 195 раз

Re: Конвертация цитат phpBB 3.0.x -> 3.2.x

Сообщение Sumanai »

is_pronin писал(а): 04.03.2019 22:29 Интересно, а остальные что, просто обновлялись с потерей всех предыдущих цитат?
Остальные не использовали моды на ссылку в цитатах.
Аватара пользователя
Pazh
Former team member
Сообщения: 2317
Стаж: 14 лет 5 месяцев
Благодарил (а): 37 раз
Поблагодарили: 261 раз

Re: Конвертация цитат phpBB 3.0.x -> 3.2.x

Сообщение Pazh »

is_pronin, ничего никуда не теряется, Вы себе сами что-то напридумывали и решили это исправить
Помощь в ЛС/email только за WM или ЮMoney
is_pronin
phpBB 1.4.1
Сообщения: 41
Стаж: 5 лет 10 месяцев
Благодарил (а): 9 раз

Re: Конвертация цитат phpBB 3.0.x -> 3.2.x

Сообщение is_pronin »

Sumanai писал(а): 04.03.2019 22:42 Остальные не использовали моды на ссылку в цитатах.
Естественно я имел в виду тех, кто использовал этот мод. Неужели они просто забили и обновились с потерей всех предыдущих цитат?
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 2 месяца
Откуда: Калининград не Кенигсберг
Благодарил (а): 41 раз
Поблагодарили: 1716 раз

Re: Конвертация цитат phpBB 3.0.x -> 3.2.x

Сообщение Sheer »

is_pronin писал(а): 04.03.2019 22:25 Зачем переписывать обработку bbcode
Хотя бы затем, что в новой версии движка используется новый парсер.

Отправлено спустя 1 минуту 10 секунд:
is_pronin писал(а): 04.03.2019 22:53 кто использовал этот мод
А таких было много?
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
is_pronin
phpBB 1.4.1
Сообщения: 41
Стаж: 5 лет 10 месяцев
Благодарил (а): 9 раз

Re: Конвертация цитат phpBB 3.0.x -> 3.2.x

Сообщение is_pronin »

Pazh писал(а): 04.03.2019 22:51 is_pronin, ничего никуда не теряется, Вы себе сами что-то напридумывали и решили это исправить
Цитаты вида:

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

[quote="111";p="222"][/quote]
Не обрабатываются стандартными bbcode. Короче, nissin понял о чём я.

Отправлено спустя 1 минуту 13 секунд:
Sheer писал(а): 04.03.2019 22:54 Хотя бы затем, что в новой версии движка используется новый парсер.
Так проще старые цитаты в БД преобразовать к новому виду, чем плясать с bbcode.
Аватара пользователя
Sumanai
phpBB 3.0.0 RC5
Сообщения: 1668
Стаж: 9 лет 5 месяцев
Благодарил (а): 257 раз
Поблагодарили: 195 раз

Re: Конвертация цитат phpBB 3.0.x -> 3.2.x

Сообщение Sumanai »

is_pronin писал(а): 04.03.2019 22:53 Неужели они просто забили и обновились с потерей всех предыдущих цитат?
Скорее всего использовали решение подобное от nissin, или продолжают сидеть на 3.0. Как вариант заменой через БД и репарсинг, но я не уверен, что синтаксис SQL это позволяет.
is_pronin
phpBB 1.4.1
Сообщения: 41
Стаж: 5 лет 10 месяцев
Благодарил (а): 9 раз

Re: Конвертация цитат phpBB 3.0.x -> 3.2.x

Сообщение is_pronin »

Sumanai писал(а): 04.03.2019 22:59 Как вариант заменой через БД и репарсинг, но я не уверен, что синтаксис SQL это позволяет.
Да, тупо SQL запросом не обойдёшься. Надо отдельным скриптом по всем постам проходиться, выдёргивать регуляркой и приводить к новому виду.
Аватара пользователя
Pazh
Former team member
Сообщения: 2317
Стаж: 14 лет 5 месяцев
Благодарил (а): 37 раз
Поблагодарили: 261 раз

Re: Конвертация цитат phpBB 3.0.x -> 3.2.x

Сообщение Pazh »

is_pronin, и часто Вы пользовались ссылкой на исходный пост в цитате? Из праздного любопытства... ИМХО, бесполезная безделушка, которая Вам добавила геморой при обновлении
Помощь в ЛС/email только за WM или ЮMoney
is_pronin
phpBB 1.4.1
Сообщения: 41
Стаж: 5 лет 10 месяцев
Благодарил (а): 9 раз

Re: Конвертация цитат phpBB 3.0.x -> 3.2.x

Сообщение is_pronin »

Pazh писал(а): 04.03.2019 23:04 is_pronin, и часто Вы пользовались ссылкой на исходный пост в цитате?
Очень часто. Бывает пользователь процитирует только часть сообщения из середины топика, где 50k сообщений. По ссылке можно сразу попасть на цитируемый пост и посмотреть его полностью.
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2209
Стаж: 16 лет 4 месяца
Откуда: Павлодар
Благодарил (а): 5 раз
Поблагодарили: 153 раза

Re: Конвертация цитат phpBB 3.0.x -> 3.2.x

Сообщение nissin »

is_pronin, расширение во вложении.
Обычно в таких случаях пишу простой скрипт, но было желание сделать именно расширением.
Перед заменой желательно сделать резервную копию :)
Командная строка из корня форума:

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

php bin/phpbbcli.php replace:quote
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Всё повторяется. nurlan.info

Вернуться в «Поддержка phpBB 3.2.x»