Перейти к контенту

Разработка конвертера ucoz to IPB


Рекомендуемые сообщения

Наболевшая тема - написание рабочего конвертера БД юкоза в БД IPB. За основу взял IPB 2.3.6. Приступаю к описанию.

 

В ипб, сообщения привязываются одновременно к нескольким переменным: пользователь, форум и тема. Соответственно, мало перенести одну базу сообщений - они просто не будут отображаться, т.к. форумы и разделы не созданы или их ID не совпадают. Значит нужно перерести ВСЮ базу пользователей, с сохранением ID, а так же перенести базу форумов, или создать таблицу с форумами в пхпмайАдмин вручную.

 

Нам понадобятся таблицы из IBP 2.3.6:

ibf_forums,

ibf_members,

ibf_posts,

ibf_topics.

Именно в этих таблицах содержатся 99% необходимых данных. Для начала экспортируем все три таблицы из мускула в CSV, очистив поле "ограничители полей", а в поле "разделитель" поставить символ "|" без кавычек. Сохраняем полученные файлы на компьютер. Чтобы нашим многоуважаемым пользователям не терять время и нервы - предлагаю кусочки из этих таблиц с указанием значения полей (для нормального просмотра скопируйте этот текст в блокнот отключив автоперенос слов):

ibf_members:

id|  name|  mgroup| email| joined| ip_address| posts| title| allow_admin_mails| time_offset| hide_email| email_pm| email_full| skin| warn_level| warn_lastwarn| language| last_post|  restrict_post| view_sigs| view_img|  view_avs| view_pop| bday_day| bday_month|  bday_year| new_msg| msg_total| show_popup| misc| last_visit|  last_activity| dst_in_use| view_prefs| coppa_user| mod_posts|  auto_track| temp_ban| sub_end| login_anonymous| ignored_users| mgroup_others| org_perm_id| member_login_key| member_login_key_expire| subs_pkg_chosen| has_blog|  has_gallery| members_markers| members_editor_choice| members_auto_dst| members_display_name|  members_created_remote| members_cache| members_disable_pm|  members_l_display_name| members_l_username| failed_logins| failed_login_count| members_profile_views

1| Mylogin| 4| 123@mail.ru| 1236570978| 127.0.0.1| 12| Администратор| NULL| NULL| NULL| 1| NULL| 5| NULL| 0| ru| 1237026930| 0| 1| 1| 1| 1| NULL| NULL| NULL| 0| 0| 0| NULL| 1237121322| 1237371907| 0| -1&-1| 0| 0| 0| 0| 0| 0&1| NULL|  | | 5e1717959a76b3d0bdd7718045a48f10|  1237976707| 0| 0| 0| NULL| std| 1| 123| 0| a:1:{s:7:"friends";a:0:{}}| 0| 123| 123| | 0| 0

Аналогия этой таблицы в юкозе (т.е. то, что необходимо сконвертировать в вариант выше):

Mylogin| 0| $1$password| path to avatar| 0| MyName| 1| 123@mail.ru| Mysite| | 204| Adress| City| Signature| | 1208496325| 127.0.0.1| 8domain| | | | 0| 1986-04-26| 0| | 1228195079
Yourlogin| 0| $1$password| path to avatar| 19| 223@mail.ru| 1| 223@mail.ru| | | 169| | | sz| | 1230674316| 92.101.6.173| 8domain| | | | 0| 1994-09-27| 0| | 1230674555

здесь нет почему то ID пользователя, но в БД все пользователи идут в строгом порядке, значит можно просто все строки пронумеровать

 

теперь идет ibf_topics:

tid|title|description|state|posts|starter_id|start_date|last_poster_id|last_post
|icon_id|starter_name|last_poster_name|poll_state|last_vote|views|forum_id|appro
v
ed|author_mode|pinned|moved_to|total_votes|topic_hasattach|topic_firstpost|topic
_
queuedposts|topic_open_time|topic_close_time|topic_rating_total|topic_rating_hit
s
1|Добро пожаловать||open|2|1|1236570978|1|1236571381|0|123|123|0|0|9|2|1|0|0|0|0|0|1|0|0
|0|0|0

аналогия на юкозе:

ид_темы| ид_форума| -| -| -| -| -| -| название| описание| автор| -| последний ответ от| -| -| -
5| 22| 0| 1| 1236797560| 0| 57| 2| Книги серии S.T.A.L.K.E.R.| Обсуждение книг, входящих в серию S.T.A.L.K.E.R.| NoName| 1| WFOX| 1| 1| 3

как быть с ibf_forums - я не знаю, т.к. в БД юкоза прямых ссылок и указаний на них нет (кроме указания ИД у тем, которые в этих форумах лежат)

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

ну и самое главное - ibf_posts:

pid| append_edit| edit_time| author_id| author_name| use_sig| use_emo| ip_address| post_date| icon_id| post| queued| topic_id| post_title| new_topic| edit_name| post_key| post_parent| post_htmlstate| post_edit_reason
1| 0| NULL| 1| IBResource Team| 0| 1| 127.0.0.1| 1236570978| 0| Добро пожаловать в ваш новый форум| 0| 1| NULL| 1| NULL| 0| 0| 0|

аналогия юкоза:

-|-|-|id_поста(номер поста в топике)|текст поста|-|Автор_поста|0|кто_правил|-|-|-|ип_автора|-|-|-|-
3|2|1209281287|1|В данном разделе будут вестись обсуждения относительно хода съемок<br /> В данный момент идет подготовка к съемкам тизера|1|Бармен|0|NoName|1209561669|````|````|80.81.000.00|0|0|1|1209561669

 

ну вот - теперь нужно второе перегнать в первое, причем можно смириться даже с потерей всех данных из профиля, главное чтобы сохранялся логин, ид, и пароль (кстате, где он хранится на борде я так и не нашел, возможно даже кодировка паролей не будет совпадать), я совершено не знаю PHP, потому пытаюсь делать все при помощи скрипов JS и jQ, если что получится - отпишусь. И мне не помешала бы помощь опытных кодеров, которые могут представить себе, как подбная система должна работать и как ее реализовать. Если нужны дополниетльные данные - могу предоставить без проблем. надеюсь на вашу поддержку, все таки не для себя любимого делаю. Если нужно - могу прикрепить исходники всех необходимых баз и юкоза и ипб.

Ссылка на комментарий
Поделиться на других сайтах

  • 5 недель спустя...
Нашел способ конвертирования вручную, все работает, так что если есть желание и деньги (платно же) буду помогать. Правда времени у меня не так уж и много, работа, учеба там... Стучите в асю 499056067 тока заранее сообщайте что вы по поводу конвертации. От вас тоже кое-что потребуется кое-какая помощь, но там по мелочи.
Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.