Переезд с PN_PHPBB на SMF

Автор sveneld, 05 декабря 2006, 11:41:53

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

sveneld

Хочеться осуществить сабж. Как сделать, кто сталкивался?

Mavn

я так понял это переделка phpbb под нюку... попробуй конвертор от phpbb посмотри что получится только конечно на локалке тестируй сначала
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

sveneld

Да это переделка phpbb под ньюку. Натравил на него конвертор от phpbb выдало такое

Sorry, the database connection information used in the specified installation of SMF cannot access the installation of phpBB2. This may either mean that the installation doesn't exist, or that the MySQL account used does not have permissions to access it.

The error MySQL gave was: Incorrect table name 'users'

Mavn

в общем вариант есть
1. Редактируем конвертор от phpbb удаляем конертацию пользователей. заливаем файлы от стандартного phpbb прописываем коннект к бд в конфиге phpbb
2. Редактируем конвертор для phpnuke оставляем конвертацию только пользователей и групп в общем все что нестандартно и берется из нюки
3. выполняем конвертацию phpbb потом phpnuke и по идее должно быть все нормально
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

sveneld

Сделал такой финт ушами:
1. Установил PHPBB в ту же базу что и PostNuke с префиксом таблиц phpbb_
2. В файле config.php для форума PhpBB порписал префикс таблиц nuke_phpbb_
3. Запустил конвертор для PHHBB всё замечательно сработало, перенеся всё из PNphpBB
Это было проделано на локальной машине
В инете выдаёт следующую ошибку:
Converting posts (this may take some time)... Unsuccessful!
This query:

    SELECT
    p.post_id AS ID_MSG, p.topic_id AS ID_TOPIC, p.post_time AS posterTime,
    p.poster_id AS ID_MEMBER, IFNULL(u.user_email, '') AS posterEmail,
    IF(IFNULL(pt.post_subject, '') = '', t.topic_title, pt.post_subject) AS subject,
    IF(IFNULL(p.post_username, '') = '', u.username, p.post_username) AS posterName,
    p.enable_smilies AS smileysEnabled, p.post_edit_time AS modifiedTime,
    CONCAT_WS('.', CONV(SUBSTRING(p.poster_ip, 1, 2), 16, 10), CONV(SUBSTRING(p.poster_ip, 3, 2), 16, 10), CONV(SUBSTRING(p.poster_ip, 5, 2), 16, 10), CONV(SUBSTRING(p.poster_ip, 7, 2), 16, 10)) AS posterIP,
    REPLACE(REPLACE(IF(pt.bbcode_uid = '', pt.post_text, REPLACE(REPLACE(REPLACE(pt.post_text, CONCAT(':u:', pt.bbcode_uid), ''), CONCAT(':1:', pt.bbcode_uid), ''), CONCAT(':', pt.bbcode_uid), '')), '\n', '<br />'), '"', '"') AS body,
    p.forum_id AS ID_BOARD
    FROM (`yartur`.nuke_phpbb_posts AS p, `yartur`.nuke_phpbb_posts_text AS pt, `yartur`.nuke_phpbb_topics AS t)
    LEFT JOIN `yartur`.nuke_phpbb_users AS u ON (u.user_id = p.poster_id)
    WHERE pt.post_id = p.post_id
    AND t.topic_id = p.topic_id
    LIMIT 0, 200;

Caused the error:

    Illegal mix of collations (cp1251_general_ci,IMPLICIT) and (koi8r_bin,IMPLICIT) for operation 'if'

При этом весь русский текст идёт знаками вопорса :( В какую сторону рыть?

sveneld

Порписал в convert.php при конекте к базе mysql_query("set names 'cp1251'") Теперь Имена тем и пользователи стали нормально отображаться а не знаками вопроса, но выдаёт всю туже ошибку при переносе сообщений :(

Mavn

посмотрите и сопаставьте поля относящиеся к таблице пользователей
например здесь
p.poster_id AS ID_MEMBER, IFNULL(u.user_email, '') AS posterEmail,

у вас скорее всего используются другие поля для данного дела
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

sveneld

#7
А можно как то развёрнуто? А то не совсем понял что надо сделать.

И на сколько я понимаю судя по ошибке
    Illegal mix of collations (cp1251_general_ci,IMPLICIT) and (koi8r_bin,IMPLICIT) for operation 'if'
Оно говорит что таблицы в разных кодировках, хотя они в одинаковых

Mavn

посмотри поля относящиеся к пользователям сопоставь со своим бэкап правильно ли называются. В общем поскольку продукт у тебя не стандартный то соответственно обычным конвертором не обойдешься что тебе нужно будет сделать так это сопоставить название полей PN_phpbb и тем что у тебя есть в конверторе. Пример что привел выше означает то что если в стандартном phpbb поля называются так как привел то в твоем поля пользователей изменены на нюковские и тебе в конверторе нужно это изменить сопоставить то что у тебя есть на самом деле к тому что есть в конверторе. Поменяй поля в конверторе с phpbb на pn_phpbb
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

sveneld

Дома на локальной машине ведь обошелся :)
Проверил поля они такие же, т.е. всё коректно. По повду полей в конверторе, они берутся из настроек phpbb, а  в нём я прописал что у него база размещена в nuke_phpbb_

Mavn

выражайтесь яснее :)! Что значит обошелся на локальной машине?
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

sveneld

На локалке тестил с практически пустым форумом, перелило всё замечатльно. Залив на локальной машине бекап своего форума, перелить не удалось выдало туже ошибку. Вот структура таблиц для PNphpBB
nuke_phpbb_posts:

post_id

topic_id
   
forum_id
   
poster_id
   
post_time
   
poster_ip
   
post_username
   
enable_bbcode
   
enable_html
   
enable_smilies
   
enable_sig
   
post_edit_time
   
post_edit_count
   
post_attachment
   
post_icon

nuke_phpbb_posts_text:

post_id
   
bbcode_uid
   
post_subject
   
post_text



nuke_phpbb_topics:
     
topic_id
   
forum_id
   
topic_title
   
topic_poster
   
topic_time
   
topic_views
   
topic_replies
   
topic_status
   
topic_vote
   
topic_type
   
topic_first_post_id
   
topic_last_post_id
   
topic_moved_id
   
topic_attachment
   
topic_icon
   
support_status


nuke_phpbb_users:
     
user_id
   
user_active
   
username
   
user_password
   
user_session_time
   
user_session_page
   
user_lastvisit
   
user_regdate
   
user_level
   
user_posts
   
user_timezone
   
user_style
   
user_lang
   
user_dateformat
   
user_new_privmsg
   
user_unread_privmsg
   
user_last_privmsg
   
user_emailtime
   
user_viewemail
   
user_attachsig
   
user_allowhtml
   
user_allowbbcode
   
user_allowsmile
   
user_allowavatar
   
user_allow_pm
   
user_allow_viewonline
   
user_notify
   
user_notify_pm
   
user_popup_pm
   
user_rank
   
user_avatar
   
user_avatar_type
   
user_email
   
user_icq
   
user_website
   
user_from
   
user_sig
   
user_sig_bbcode_uid
   
user_aim
   
user_yim
   
user_msnm
   
user_occ
   
user_interests
   
user_actkey
   
user_newpasswd
   
user_login_tries
   
user_last_login_try

sveneld

А ларчик то просто открывался :)

В файле phpbb2_to_smf.sql
необходимо произвести коректировку строк 281 и 282

вместо строк

   IF(IFNULL(pt.post_subject, '') = '', t.topic_title, pt.post_subject) AS subject,
   IF(IFNULL(p.post_username, '') = '', u.username, p.post_username) AS posterName,


вставить

   pt.post_subject AS subject,
   p.post_username AS posterName,

Единственной с чем несправляеться конвертор это с пересчётом статистики, выдавая ошибку

Recalculating forum statistics... Unsuccessful!
This query:

    UPDATE `nuke`.smf_boards
    SET ID_LAST_MSG = 1820, lastUpdated = 1150661083
    WHERE ID_BOARD = 1
    LIMIT 1;

Caused the error:

    Unknown column 'lastUpdated' in 'field list'

но я думаю это не такая уж серьёзная проблема что бы обращать на неё внимание

Спасибо Mavn за советы :)

Mavn

SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

MrBean

Доброго времени суток! Пытался перебросить базу данных из форума phpBB, интегрированного в PHP-Nuke. Скаачал конвертер с сайта SMF:
http://www.simplemachines.org/download/index.php?thanks;filename=smf_1-1-1_phpnuke_converter.zip
В итоге получаю следующую ошибку:
Converting topics... [b]Unsuccessful![/b]
This query:
    INSERT INTO `uninet`.smf_topics
    (ID_TOPIC, isSticky, ID_FIRST_MSG, ID_LAST_MSG, ID_MEMBER_STARTED, ID_MEMBER_UPDATED, ID_BOARD, ID_POLL, locked, numReplies, numViews)
    VALUES ('1', '0', '1', '1647', '2', '2', '6', '2', '1', '35', '747'),
    ...тут идет набор цифр :)
     ('291', '0', '6085', '6085', '109', '109', '4', '', '0', '0', '1');

Caused the error:

    Duplicate entry '1' for key 1


При удалении записи с индексом 1 конвертер начинает ругаться на следующую запись :( Кто уже с этим сталкивался, подскажите что делать?

sveneld

Прочитай мои посты выше, необходимо конвертор немного поправить, что бы всё работало.

asterix

Всем привет.
столкнулся с похожей проблемой...
знаний в php нуль  поэтому прошу откликнуться

стоит форум - модуль phpBB2  хочу перенести данные на smf 1.1.8
smf установил в туже базу что и phpBB2.
скачал конвертор базы http://download.simplemachines.org/index.php?thanks;filename=smf_1-1-8_phpbb2_converter.zip
в общем выдает ошибку :
ЦитироватьSorry, the database connection information used in the specified installation of SMF cannot access the installation of phpBB2. This may either mean that the installation doesn't exist, or that the MySQL account used does not have permissions to access it.

The error MySQL gave was: Incorrect table name 'users'
чего с ним делать?

digger®

Цитата: asterix от 05 мая 2009, 03:10:52
Всем привет.
столкнулся с похожей проблемой...
знаний в php нуль  поэтому прошу откликнуться

стоит форум - модуль phpBB2  хочу перенести данные на smf 1.1.8
smf установил в туже базу что и phpBB2.
скачал конвертор базы http://download.simplemachines.org/index.php?thanks;filename=smf_1-1-8_phpbb2_converter.zip
в общем выдает ошибку :чего с ним делать?

Предыдущие ссобщения читали? Конвертер из каталога phpbb запускаете?

asterix

прежние посты все прочитал...
вопрос  : запускать из каталога чего?
я скинул файлы в корень сайта и того... не айс...


asterix

у меня сайт написан на нюке, и к нему приклеен форум.
скинул файлы конвертора в корень форума  - после запуска просто белая страница...
Форумы установлены в одну базу но в разные папки

digger®

Цитата: asterix от 05 мая 2009, 15:33:17
у меня сайт написан на нюке, и к нему приклеен форум.
скинул файлы конвертора в корень форума  - после запуска просто белая страница...
Форумы установлены в одну базу но в разные папки

Есть же конвертер именно для нюки, почемы вы им не пользуетесь?

asterix

так ведь форум phpbb версии 2. ...
там а сам сайт на нюке вот и пойми кого и с чем есть : )
пробовал конвертор от нюки - тоже самое...:) - белая страница.

asterix

так кто то  поможет мне с этим форумом или головой об стену???