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

[FAQ] Как сконвертировать phpBB 2 в phpBB 3

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

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
dmsuslov
phpBB 1.0.0
Сообщения: 1
Стаж: 16 лет 9 месяцев

[FAQ] Как сконвертировать phpBB 2 в phpBB 3

Сообщение dmsuslov »

Кто-нибудь конвертировал сабж? У меня возникла проблема: получилось почти все, кроме кодировки символов :cry:
Старый форум (phpBB2) был в кодировке windows-1251, а новый в utf-8. Весь контент переносится в виде каких-то кракозябров...
Окунувшись в документацию, вычитал, что нужно поправить файл lang_main.php в старом форуме, а именно $lang['ENCODING']. Но изменения в нем влияют лишь на внешний вид кракозябров. Нормального текста контента добиться не удалось.

P.S.
phpBB2 2.0.20
phpBB3 3.0 RC3
  • С чего начать?
    Начните с "чистой" установки phpBB3 в отличный от phpBB2 каталог. Затем снова перейдите в баузере в каталог install и щёлкните по вкладке "Конвертирование".
  • Где почитать документацию по конвертированию на русском языке?
    http://www.vvvas.ru/it/phpbb/3.0/docs/I ... ml#convert
  • Изменяются ли в процессе конвертации содержимое и файлы phpBB2?
    В процессе конвертации не подвергаются изменениям ни таблицы phpBB2 в базе данных, ни исходные файлы phpBB2.
  • Старый форум находится по адресу: forum2.domen.ru, а новый по адресу: forum.domen.ru. При этом старый лежит в папке:
    /home/b/boshnet/forum2/public_html/ а новый в папке: /home/b/boshnet/forum/public_html/
    Какой относительный путь указать при конвертации?

    ../../forum2/public_html/
  • Сохранятся ли моды, которые были установлены в phpBB2, после конвертации в phpBB3?
    Будут сконвертированы только моды:
    - File Attachment Mod by Acyd Burn
    - Birthday by Niels
    - Birthdays by TerraFrost
  • Почему после конвертации в phpBB3 в сообщениях вместо русских букв - кракозябры?
    Вариант: кракозябры не везде, а только в сообщениях некоторых пользователей.
    Для корректного конвертирования необходимо, чтобы кодировка таблиц phpBB2 в базе данных соответствовала значению переменной $lang['ENCODING'] в файле language/lang_russian/lang_main.php. Варианты решения:
    1) Сложный. Переконвертировать содержимое базы данных в кодировку, указанную в переменной $lang['ENCODING'].
    2) Простой. Назначить переменной $lang['ENCODING'] значение, совпадающее с текущей кодировкой базы данных. При этом сообщения и другой контент на "старом" форуме могут стать нечитабельными, тем не менее, после конвертации читабельность восстановится.
    3) Альтернативный: http://www.phpbbguru.net/community/topi ... ml#p245047

    Перед конвертацией также рекомендуется проверить, какой язык по умолчанию установлен у всех пользователей, и изменить на русский, если это необходимо.
Аватара пользователя
ScorpAL
phpBB 1.2.1
Сообщения: 20
Стаж: 17 лет 5 месяцев

Re: [FAQ] Конвертация phpBB2 > phpBB3

Сообщение ScorpAL »

Пробуйте через phpMyAdmin делать дамп.
И придем к тому с чего начинали...
Тогда теряется смысл: "смысл всех этих операций простой: выдернуть базу средствами самого форума потому что он кодировки и кирилический текст читает из базы нормально и экспортирует ее в cp1251 кодировке." http://www.phpbbguru.net/community/topi ... ml#p245047
MAzZY
Бывший член :)
Сообщения: 2925
Стаж: 18 лет 11 месяцев
Благодарил (а): 20 раз
Поблагодарили: 30 раз
Забанен: Бессрочно

Re: [FAQ] Конвертация phpBB2 > phpBB3

Сообщение MAzZY »

ScorpAL, что-то я никак не пойму. То Вы в базе поменяли кодировку, то нет. Если поменяли, то делайте дамп через phpMyAdmin. Вы же видите, что через админку форума не получается. Делайте дамп частями, по одной-две таблицы, а потом также поднимите.
Аватара пользователя
ScorpAL
phpBB 1.2.1
Сообщения: 20
Стаж: 17 лет 5 месяцев

Re: [FAQ] Конвертация phpBB2 > phpBB3

Сообщение ScorpAL »

MAzZY,

В начале моей дискуссии был изложен путь решения проблемы.
Если бы были другие варианты, я непременно воспользовался бы ими.
Я нашел путь решения проблемы для себя. У меня получается переконвертировать именно так, и никак по другому.
Искать другие пути, пока выливается в гораздо большее число вопросов.
И были заданы конкретные вопросы.

Так случилось, что на вопрос №1 я смог найти ответ и опубликовал его выше.
Надеюсь Вы не пропустили тот пост.

Осталось найти ответ на второй вопрос.

Все дальнейшие посты были холиваром на тему "А НЕ ПРОЩЕ ЛИ..."
На что и были даны не менее холиварные ответы в виде "НЕТ. НЕ ПРОЩЕ."

Если можете помочь? Буду очень рад.
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2209
Стаж: 16 лет 4 месяца
Откуда: Павлодар
Благодарил (а): 5 раз
Поблагодарили: 153 раза

Re: [FAQ] Конвертация phpBB2 > phpBB3

Сообщение nissin »

ScorpAL
Находил я как-то скриптик для подобной конвертации.
Только сейчас уже и не вспомню где и откуда.

Для себя я бы просто поправил функцию phpbb_set_encoding.

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

   return iconv('windows-1251', 'utf-8', iconv('utf-8', 'ISO-8859-1' , $text));
Всё повторяется. nurlan.info
Аватара пользователя
ScorpAL
phpBB 1.2.1
Сообщения: 20
Стаж: 17 лет 5 месяцев

Re: [FAQ] Конвертация phpBB2 > phpBB3

Сообщение ScorpAL »

nissin,
можно подробнее?
Речь идет о строке #420 файла \phpBB3\install\convertors\functions_phpbb20.php ?

По дефолту строка имеет вид:

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

return utf8_recode($text, $lang_enc_array[$get_lang]);
Т.е. со старой базой ничего не делать, а просто заменить строку в install\convertors\functions_phpbb20.php ?
И пробовать конвертить?

Так?
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2209
Стаж: 16 лет 4 месяца
Откуда: Павлодар
Благодарил (а): 5 раз
Поблагодарили: 153 раза

Re: [FAQ] Конвертация phpBB2 > phpBB3

Сообщение nissin »

Лучше добавить после:

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

function phpbb_set_encoding($text, $grab_user_lang = true)
{
	global $lang_enc_array, $convert_row;
	global $convert, $phpEx;
Строчку я написал именно для Вашего случая (кодировка latin1 в базе UTF-8).
Такое очень часто встречается на зарубежных хостингах.
Всё повторяется. nurlan.info
Аватара пользователя
ScorpAL
phpBB 1.2.1
Сообщения: 20
Стаж: 17 лет 5 месяцев

Re: [FAQ] Конвертация phpBB2 > phpBB3

Сообщение ScorpAL »

nissin, спасибо попробуем.
Стопангин
phpBB 1.4.0
Сообщения: 34
Стаж: 16 лет 3 месяца

Re: [FAQ] Конвертация phpBB2 > phpBB3

Сообщение Стопангин »

Его можно делать и собственными средствами, например, командной UNIX-строкой в putty.exe или другом shell-клиенте

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

mysqldump -u Ваш_логин -pВаш_пароль имя_базы > имя_выходного_дампа.sql
Добавлено спустя 8 минут 32 секунды:
Это была реплика на
MAzZY 25.11.2009 13:21
ScorpAL
Только архив с полным бэкапой средствами самого phpBB приходит ко мне битым (~29.5Mb).
Видимо, скрипту не хватает времени на выполнение.
Пробуйте через phpMyAdmin делать дамп. Либо техподдержку хостера попросить - они отдадут нормальный дамп.
Дамп образуется в корневой директории сайта.
версия 3.0.6-RC3_0
Аватара пользователя
ScorpAL
phpBB 1.2.1
Сообщения: 20
Стаж: 17 лет 5 месяцев

Re: [FAQ] Конвертация phpBB2 > phpBB3

Сообщение ScorpAL »

nissin,

Спасибо!
Действительно без лишних телодвижений "тестовый" форум был вполне успешно сконвертирован.

Добавление строки

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

return iconv('windows-1251', 'utf-8', iconv('utf-8', 'ISO-8859-1' , $text));
в файле \phpBB3\install\convertors\functions_phpbb20.php
сразу после

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

function phpbb_set_encoding($text, $grab_user_lang = true)
{
   global $lang_enc_array, $convert_row;
   global $convert, $phpEx;
избавило меня от создания/перезаливания дампов или телеодвижений с SQL запросами с таблицами и данными.

В процессе конвертации выскочили только проблемы с одинаковыми юзернемами (Ругалось на "CЕРГЕЙ" и "сергей"). Пришлось удалить (в случае если зарегистрирован давно и не имеет ни одного сообщения) или переименовать (в случае если зарегестрирован позже чем его "одноникнемовец").

Так же ругнулось несколько раз на слишком короткое сообщение. Перед "настоящей" (не тестовой) ковертацией придется пройтись и поудалять сообщения с ID на которые ругнулось.

Еще раз примного благодарен.
all123
phpBB 1.0.0
Сообщения: 1
Стаж: 14 лет 4 месяца

Re: [FAQ] Конвертация phpBB2 > phpBB3

Сообщение all123 »

Добрый день. вчера пробовал перейти - не получилось. помогите пожалуйста.
делал все по инструкции и наткнулся на проблемму кирилицы:
бд форума 2.0 - все таблицы DEFAULT CHARSET=cp1251.
в бд для 3.0 - utf8

подумав решил делать так:
1.Поставил 3.0.6 с нуля.
2. для всех таблиц бд форума3 сделал alter table ${i} DEFAULT CHARSET=cp1251
3. в файле functions_phpbb20.php заменил SET NAMES 'utf8' на SET NAMES 'cp1251'
начал конвертацию. во время конвертации он начал ругаться на юзеров из базы форума2 имена которых одинаковые но в разном регистре. типа Яна и яна и тд. поиск в functions_phpbb20.php по lower ничего не дал
пожертвовать частью юзеров не готов.

что делать ?
вариант - переделывать бд форума2 в utf8 не устраивает, mysql собран с 1251.
Аватара пользователя
Rayden
Former team member
Сообщения: 3739
Стаж: 18 лет 10 месяцев
Поблагодарили: 3 раза

Re: [FAQ] Конвертация phpBB2 > phpBB3

Сообщение Rayden »

all123 писал(а):2. для всех таблиц бд форума3 сделал alter table ${i} DEFAULT CHARSET=cp1251
нах?
Ты в какой инструкции такое прочитал?
all123 писал(а):подумав решил делать так:
all123 писал(а):что делать ?
думай заново, вдруг надумаешь что новенькое. Например, не изобретать свой способ, а сделать четко по инструкции.
all123 писал(а):во время конвертации он начал ругаться на юзеров из базы форума2 имена которых одинаковые но в разном регистре. типа Яна и яна и тд. поиск в functions_phpbb20.php по lower ничего не дал
Попробуй почитать тему, проблема обсуждалась не раз.
Никем жертвовать не надо, достаточно потратить одну минуту на чтение инструкции.

Добавлено спустя 1 минуту 29 секунд:
all123 писал(а):mysql собран с 1251.
а это вообще по барабану, с чем он собран и в какой кодировке старый форум.
Трешка работает ТОЛЬКО с ютф.
phpBB2 FAQ
phpBB3 FAQ
Ytko
phpBB 1.0.0
Сообщения: 5
Стаж: 14 лет 4 месяца

Re: [FAQ] Конвертация phpBB2 > phpBB3

Сообщение Ytko »

Вот решил обновить, делаю все по инструкции.
Тут вылетает "критическая ошибка:
http://a4game.org.ru/phpbb.jpg (Скрин) .
Перехожу в панель управления -> Пользователи -> Управление -> Ввожу этот самый ник, а он мне пишет: "Извините, такого пользователя не существует", перехожу в раздел "Пользователи" (Полный список) и к моему удивлению этот пользователь там есть:
http://a4game.org.ru/phpbb1.jpg (Скрин)
Вроде бы все изложил, как есть. Жду ответа ;)
Аватара пользователя
Fray98rus
Former team member
Сообщения: 442
Стаж: 16 лет 6 месяцев
Откуда: Санкт-Петербург
Благодарил (а): 1 раз
Поблагодарили: 1 раз

Re: [FAQ] Конвертация phpBB2 > phpBB3

Сообщение Fray98rus »

Дык вот надо удалить одного. (я с двойкой не работал, но) возможно можно через профиль пользователя выбрать "Администрировать", и так его удалить.
Ytko
phpBB 1.0.0
Сообщения: 5
Стаж: 14 лет 4 месяца

Re: [FAQ] Конвертация phpBB2 > phpBB3

Сообщение Ytko »

Читай внимательнее, я пробовал через профиль, он не находит его.
MAzZY
Бывший член :)
Сообщения: 2925
Стаж: 18 лет 11 месяцев
Благодарил (а): 20 раз
Поблагодарили: 30 раз
Забанен: Бессрочно

Re: [FAQ] Конвертация phpBB2 > phpBB3

Сообщение MAzZY »

Найти в базе и переименовать
Перенесено из форума FAQ (phpBB 3.0.x) в форум FAQ 10.06.2015 18:34 модератором rxu

Вернуться в «FAQ»