Конвертация базы IPB 1.3 в базу SMF 2

Автор Perm, 01 августа 2015, 17:19:28

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

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

Perm

Подскажите, пожалуйста, как это сделать?

Yworld_garry

Вот тут есть конверторы http://download.simplemachines.org/?converters

А в поиске поищите как можно конвертировать форум.

Perm

Спасибо. Но самого форума, к сожалению, нет. Есть только база sql.


Perm

К сожалению, файла конфигурации тоже нет.

digger®

Цитата: Perm от 03 августа 2015, 20:30:14К сожалению, файла конфигурации тоже нет.
Берете файл конфигурации от дистриба IPB 1.3, заливаете дамп в базу, прописываете в этом конфиге реквизиты доступа к базе и запускаете конвертер.
Если будет нужна платная помощь, напишите мне в личку, могу вам под ключ отконвертировать - получите готовый форум с данными.

Perm

digger®, большое спасибо. Попробуем...

Perm

Дапм в базу установленного форума SMF нужно заливать? А конфиг кидать в директорию, где установлен SMF? Подскажите, пожалуйста.

digger®

Цитата: Perm от 03 августа 2015, 22:40:36Дапм в базу установленного форума SMF нужно заливать? А конфиг кидать в директорию, где установлен SMF? Подскажите, пожалуйста.
Заливайте дамп в базу к SMF, так проще будет. В корне форума создайте каталог ipb и в него положите конфиг. Конвертер запускаете в корне форума SMF и когда он попросит путь к установленному ipb, укажете ему ту папку в которую положили конфиг.

Perm

Cпасибо за ответ.
Выдаёт вот такое сообщение:

The converter detected that your host has open_basedir enabled on this server. Please ask your host to disable this setting or try moving the contents of your Invision Power Board to the public html folder of your site.

digger®

Цитата: Perm от 04 августа 2015, 01:59:05Cпасибо за ответ.
Выдаёт вот такое сообщение:

The converter detected that your host has open_basedir enabled on this server. Please ask your host to disable this setting or try moving the contents of your Invision Power Board to the public html folder of your site.
У вас каталог с ipb находится за пределами каталога smf, что с включенным open_basedir не прокатит. Или вы, просто, конвертеру не тот путь указываете.

Perm

Ещё раз... Всё сначала. На хостинге есть папка htdocs. В неё я распаковал дистрибутив и успешно установил форум SMF 2.0.10. Префикса у таблиц базы данных форума SMF нет. Нужен ли? Туда импортирую базу данных форума IPB 1.3. Можно ли импортировать часть таблиц? База SMF называется, например, base123. Это название как-то связано с префиксом таблиц базы SMF? В эту же папку я записал файлы convert.php и invision_to_smf.sql. Там же создаю папку ipb, куда копирую файл conf_global.php, где задаю (пытаюсь задать) параметры доступа к импортируемой базе. А именно:

1) $INFO['sql_host']         =   'localhost' заменяю на MySQL имя хоста;

2) $INFO['sql_database']      =   ''; заменяю на base123;

3) $INFO['sql_pass']         =   ''; заменяю на пароль;

4) $INFO['sql_user']         =   'root'; заменяю на имя пользователя базы;

5) $INFO['sql_tbl_prefix']         =   'ibf_'; заменяю на префикс таблиц базы форума IPB.

Подскажите, правильно ли я делаю?



digger®

Префикс у таблиц SMF по умолчанию при установке имеется и лучше всегда его использовать, во избежании возможных накладок, при установке нескольких движков в одну базу.
Таблицы можно импортировать только те, которые нужны конвертеру, если вы знаете какие именно.
Остальное, вроде, правильно.

Perm

Спасибо. Вот что выдаёт конвертер:

The error that was received from the Database was: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.ipb_members' at line 2

Perm

А теперь получаю следующее сообщение:

Unknown system variable 'SQL_MAX_JOIN_SIZE'

Perm

Погуглил и исправил. Конвертация началась. Но получаю следующее сообщение об ошибке:

Converting...
Converting members...Wrong value type sent to the database. Date expected. (birthdate)

digger®

Цитата: Perm от 06 августа 2015, 22:52:46Погуглил и исправил. Конвертация началась. Но получаю следующее сообщение об ошибке:

Converting...
Converting members...Wrong value type sent to the database. Date expected. (birthdate)
Значит в ipb у кого-то в поле birthdate что-то вовсе не типа date вписано.

Perm

Понятно... Значит, конвертация не пойдёт?

digger®

Цитата: Perm от 06 августа 2015, 23:48:45Понятно... Значит, конвертация не пойдёт?
Через phpMyAdmin или любой другой инструмент посмотрите в таблице юзеров ipb что творится в поле birthdate, наверняка, у кого-то там не дата, а пусто или что-то на дату не похожее.

Perm

Да. Есть такое дело. Поменял всем на 01.01.1990. Но там почему-то нули стоят.

Perm

Исправил. Теперь вот что пишет.
Converting members...Unknown column 'birthdate' in 'field list'


Perm

Да, там три поля - для дня, месяца и года рождения.

Perm

Подправил таблицу импортируемого форума: вместо трёх столбцов создал один (тип - date, по умолчанию, как определено: 0001-01-01). При попытки импортировать получаю следующее сообщение об ошибке:

Converting members... Unsuccessful!
This query:
SELECT
id AS id_member, SUBSTRING(name, 1, 80) AS member_name,
joined AS date_registered, posts,
IF(mgroup = 4, 1, IF(mgroup > 5, mgroup + 3, 0)) AS id_group,
last_visit AS last_login, SUBSTRING(name, 1, 255) AS real_name,
IFNULL(msg_total, 0) AS instant_messages,
SUBSTRING(password, 1, 64) AS passwd,
SUBSTRING(email, 1, 255) AS email_address,
SUBSTRING(website, 1, 255) AS website_title,
SUBSTRING(website, 1, 255) AS website_url,
SUBSTRING(location, 1, 255) AS location,
SUBSTRING(icq_number, 1, 255) AS icq, signature,
IF (bday_year = 0 AND bday_month != 0 AND bday_day != 0, CONCAT('0004-', bday_month, '-', bday_day), CONCAT_WS('-', IF(bday_year <= 4, 1, bday_year), IF(bday_month = 0, 1, bday_month), IF(bday_day = 0, 1, bday_day))) AS birthdate,
SUBSTRING(aim_name, 1, 16) AS aim, SUBSTRING(yahoo, 1, 32) AS yim,
SUBSTRING(msnname, 1, 255) AS msn, hide_email AS hide_email,
SUBSTRING(IF(avatar = 'noavatar' OR INSTR(avatar, 'upload') > 0, '', avatar), 1, 255) AS avatar,
IFNULL(email_pm, 0) AS pm_email_notify, '' AS lngfile, '' AS buddy_list,
'' AS pm_ignore_list, '' AS message_labels, '' AS personal_text,
'' AS time_format, '' AS usertitle, '' AS member_ip, '' AS secret_question,
'' AS secret_answer, '' AS validation_code, '' AS additional_groups,
'' AS smiley_set, '' AS password_salt, '' AS member_ip
FROM `runet_16486159_1`.ipb_members
WHERE id != 0
LIMIT 0, 500;
Caused the error:
Unknown column 'bday_year' in 'field list'

digger®

Цитата: Perm от 07 августа 2015, 23:17:46Подправил таблицу импортируемого форума: вместо трёх столбцов создал один (тип - date, по умолчанию, как определено: 0001-01-01). П
В импортируемом форуме ожидается три столбца - bday_year, bday_month и bday_day, судя по sql запросу. Они объединяются в дату и она записывается как birthdate в smf.

Perm

Заново залил в базу таблицу ipb_members. При попытке конвертировать получаю сообщение об ошибке: Converting members...Wrong value type sent to the database. Date expected. (birthdate). Погуглил. На англоязычном форуме поддержки SMF советуют добавить в некий файл следующее

---{
/* Fix for invalid birthdays */
if(!preg_match('/\d{4}-\d{2}-\d{2}/', $row['birthdate']))
$row['birthdate'] = '0001-01-01';
---}

Судя по всему, добавить это нужно в базу sql, которая даётся вместе с конвертером. Но это не помогло. Может, не туда добавил?

digger®

Цитата: Perm от 08 августа 2015, 22:55:52Заново залил в базу таблицу ipb_members. При попытке конвертировать получаю сообщение об ошибке: Converting members...Wrong value type sent to the database. Date expected. (birthdate). Погуглил. На англоязычном форуме поддержки SMF советуют добавить в некий файл следующее

---{
/* Fix for invalid birthdays */
if(!preg_match('/\d{4}-\d{2}-\d{2}/', $row['birthdate']))
$row['birthdate'] = '0001-01-01';
---}

Судя по всему, добавить это нужно в базу sql, которая даётся вместе с конвертером. Но это не помогло. Может, не туда добавил?
Может не туда.

Perm

Установил форум на Денвер. Пытаюсь конвертировать. Получаю следующее сообщение об ошибке:



Помогите, пожалуйста, решить проблему.

GeorG

Цитата: Perm от 11 августа 2015, 13:03:56Помогите, пожалуйста, решить проблему.
Цитата: digger® от 08 августа 2015, 00:48:41В импортируемом форуме ожидается три столбца - bday_year, bday_month и bday_day, судя по sql запросу. Они объединяются в дату и она записывается как birthdate в smf.
Т.е, выше написана в чём причина.

Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

Perm

Цитата: GeorG от 11 августа 2015, 13:28:10Т.е, выше написана в чём причина.



Это уже другая проблема. Я делаю всё сначала. Кажется, Вы невнимательно прочитали.

digger®

Цитата: Perm от 11 августа 2015, 13:03:56Установил форум на Денвер. Пытаюсь конвертировать. Получаю следующее сообщение об ошибке:



Помогите, пожалуйста, решить проблему.
Вы smf в smf теперь что ли конвертируете? Почему у вас из smf_members конвертер пытается импортировать?

Perm

#31
Спустя четыре месяца возвращаюсь к вопросу конвертации... Очень хотелось бы перевести один свой старый форум с корявого IPB 1.3 на SMF 2.0.10. При попытке конвертации снова получаю следующее сообщение:

Converting members...Wrong value type sent to the database. Date expected. (birthdate)

Никто не знает, как это исправить?

Цитата: digger® от 08 августа 2015, 00:48:41В импортируемом форуме ожидается три столбца - bday_year, bday_month и bday_day, судя по sql запросу. Они объединяются в дату и она записывается как birthdate в smf.

Посмотрел - эти три столбца на месте.

Mavn

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

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

Perm

Цитата: Mavn от 05 декабря 2015, 21:14:59попробуйте взять конвертор под смф 1.1. от конвертировать все это дело потом обновите до 2.0

Спасибо. Была такая идея. Но тут возникает два вопроса. Во-первых, где взять такой конвертер? Во-вторых, где найти дистрибутив SMF 1.1?

Нашёл SMF 1.1.16.

Yworld_garry

Вот тут http://download.simplemachines.org/index.php?archive;version=26    собственно там фильтр справа и можете выбрать версию

Perm

Спасибо! А версия 1.1.16 не подойдёт для моей цели?
К сожалению, не нашёл русификации для 1.1.1.

Mavn

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

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

Perm

Цитата: Mavn от 05 декабря 2015, 21:48:25лучше последнюю там возможно в обновлениях бд  затрагивалась и возможно придется потом либо обновления модами натягивать либо запускать обновление 1.1.16 до 1.1.21(точно не помню)

Понятно. Но не ясно, как быть с русским языком. Мой форум на русском. Думаю, это имеет значение при конвертации?

Yworld_garry

Цитата: Perm от 05 декабря 2015, 21:52:48Думаю, это имеет значение при конвертации?
да по идеи не должно быть проблем никаких.

Perm

Цитата: Yworld_garry от 05 декабря 2015, 22:09:02да по идеи не должно быть проблем никаких.

Спасибо. Попробую.

Mavn

Цитата: Perm от 05 декабря 2015, 21:52:48Понятно. Но не ясно, как быть с русским языком. Мой форум на русском. Думаю, это имеет значение при конвертации?
не имеет... потому как под 1.1.21 русский там же скачать можно...
главное чтобы у вас кодировки бд и форума совпадали, тогда конвертация должна будет пройти без особых проблем
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

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

Perm

Установил SMF 1.1.16. Вместо букв - знаки вопроса.

Mavn

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

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

Perm


Mavn

Settings.php в конец перед ?>
$db_character_set = 'utf8';
пробуйте если не сработало, проверьте читабельность данных в бд
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

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

Perm

Mavn, там это и было. Установил английскую версию - с буквами всё нормально.

При попытке конвертировать получаю сообщение:

Converting posts (this may take some time)... Unsuccessful!
This query:

Дальше много кракозябр

Caused the error:
Duplicate entry '2212' for key 'PRIMARY'

Как быть? Подскажите, пожалуйста.

Mavn

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

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

Perm

Цитата: Mavn от 05 декабря 2015, 23:40:45данные в бд читаемые?

Вроде бы, да. Я читал через Notepad++.
Более того - часть тем конвертировалась и читаема.

Цитата: Mavn от 05 декабря 2015, 23:40:45кодировка бд смф должна быть = кодировке бд ipb

А как это сделать? Я вот не уверен, что они равны.

Mavn

интересно каким образом вы notepad++ подключились к бд и посмотрели в каком состоянии там данные
phpmyadmin через него зайдите посмотрите чего творится с кодировками

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

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

Perm

Цитата: Mavn от 05 декабря 2015, 23:48:23phpmyadmin через него зайдите посмотрите чего творится с кодировками

У базы IPB кодировка cp1251.
А как её преобразовать в utf8?