Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#1 2009-02-27 00:55:10

panoptus
Участник
Откуда Украина, Николаев
Зарегистрирован: 2009-02-18
Сообщений: 159
Рейтинг :   
Сайт

Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

Для желающих конвертировать свою старую бд c DLE в NG CMS я адаптировал и немного доработал скрипт импорта.
Версия: 0.11
Тестировалось на: dle v.7.5 и NG CMS 0.9.0 Release
Описание: Данный конвертер сделан специально для желающих ”переехать” на NG CMS.
Конвертирует: пользователей, категории, новости, комментарии.

[0.11][2009-02-26]
* скрипт адаптирован для работы с NG CMS;
+ добавлена возможность выбора в какую категорию перемещать пользователей с категорий, которые отсутствуют в NG CMS;
+ исправлено пару мелких ошибок.

Инструкция:
1) удаляем все файлы и папки ДЛЕ кроме uploads*;
* базу данных не трогаем!
2) переименовываем uploads в uploads2;
3) заливаем файлы NG CMS и инсталируем ее*;
* при инсталяции выбираем ту базу данных, в которой уже стоит ДЛЕ.
4) распаковываем архив со скриптом в /engine/
5) запускаем http://адрес_сайта/engine/import/dle_import.php
6) перемещаем папку posts с uploads2 в uploads;
7) перемещаем содержимое папки  uploads2/fotos в uploads/avatars
8) удаляем uploads2;
9) если все прошло нормально - удаляем таблицы ДЛЕ из БД;

Перед конвертированием, не забудьте, на всякий случай, скопировать конвертируемую БД


Если есть какие-то пожелания или проблемы - пишите, не стесняйтесь.

Изменено panoptus (2009-02-27 01:16:13)

Не в сети

#2 2009-02-27 01:06:11

panoptus
Участник
Откуда Украина, Николаев
Зарегистрирован: 2009-02-18
Сообщений: 159
Рейтинг :   
Сайт

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

Ближайшие планы:
- конвертирование базы при импорте в ВВ-код;

И еще есть вопрос:
может кто поможет, ничего не могу сделать с аватарами.. не отображаются в NG

Изменено panoptus (2009-02-27 01:30:30)

Не в сети

#3 2009-02-27 03:50:38

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

panoptus, где именно не отображаются?
В комментах?
А ты их включил (в конфигурации системы)? Насколько я помню, по умолчанию аватары выключены smile

p.s. Спасибо за скриптик!

Не в сети

#4 2009-02-27 09:02:09

panoptus
Участник
Откуда Украина, Николаев
Зарегистрирован: 2009-02-18
Сообщений: 159
Рейтинг :   
Сайт

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

vitaly, включил, максивальные размеры в настройках увеличил... ничего не помогает.
А названия аватаров добжны на "1." начинаться??

Не в сети

#5 2009-02-27 09:23:23

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

id_user'a.название_файла.расширение

Не в сети

#6 2009-02-27 10:39:09

panoptus
Участник
Откуда Украина, Николаев
Зарегистрирован: 2009-02-18
Сообщений: 159
Рейтинг :   
Сайт

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

infinity237, а в ng_users.avatar что должно быть? название аватара без id юзера или с id?

Не в сети

#7 2009-02-27 11:07:37

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

В базе тоже с id.

Не в сети

#8 2009-02-27 15:09:25

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

Кстати, мысли по поводу преобразования HTML => BB.
В классе parse.class.php есть функция truncateHTML() - это простенький конечный автомат, который загружает и парсит HTML'ку.
Небольшая его доработка позволит строить DOM дерево и для всех тегов, для которых есть BB-аналог, делать замену.

Q: А зачем я городил всю эту конструкцию, когда можно было использовать обычный XML парсер?
A: XML парсер не может работать с не до конца валидными XML тегами (к примеру, незакрытый IMG - уже причина для отказа в парсинге) и, насколько я помню, он не позволяет в параметрах использовать русские символы (т.е. <a title="Title"> - можно, а вот <a title="Заголовок"> - уже нельзя).

Не в сети

#9 2009-02-27 15:27:45

Amarelius
Модератор
Откуда Kiev
Зарегистрирован: 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

vitaly пишет:

<a title="Title"> - можно, а вот <a title="Заголовок">

У меня с русским в параметрах всё ОК, использую SimpleXML из стандартного набора, очень удобная штука, разве что php должен быть не ниже 5-й версии.


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Не в сети

#10 2009-02-27 15:44:02

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

Amarelius, а с незакрытыми тегами (тот же img) он корректно может работать?
Т.е. реально ли распарсить им такое (т.е. у тега img - нет закрытия внутри тега):

<table><tr><td><a href="/"><img src="/img.jpg"></a></td></tr></table>

Не в сети

#11 2009-02-27 16:08:37

Amarelius
Модератор
Откуда Kiev
Зарегистрирован: 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

Только что попробовал.
Такое можно парсить только с параметром LIBXML_NOERROR, при этом ошибки парсера выводиться не будут, а те компоненты которые их вызывают, будут игнорироваться.
Таким образом, распарсит все, кроме <img src="/img.jpg">
--------------------------------------------
Наверно тебе не подойдет...


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Не в сети

#12 2009-02-27 18:10:40

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

Amarelius, правильно я понимаю, что тег <img> в итоге не попадёт в результаты парсинга?
Если так, то для парсинга HTML трафика такая библиотека не подходит, т.к. незакрытый IMG - это далеко не фатальная ошибка.

Не в сети

#13 2009-02-27 18:38:41

Amarelius
Модератор
Откуда Kiev
Зарегистрирован: 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

Правильно.
Все что не соответствует спецификации XML будет вызывать сообщение об ошибке.
Тем не менее библиотека не плохая. Информация после парсинга будет предоставлена в виде класса с деревовидной структурой. При этом можно расширить функционал базового класса, что полезно при написании разного рода XML-обработчиков и конвертеров.


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Не в сети

#14 2009-06-12 18:31:36

panoptus
Участник
Откуда Украина, Николаев
Зарегистрирован: 2009-02-18
Сообщений: 159
Рейтинг :   
Сайт

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

Кто-то из знающих, помогите прикрутить html to bb конвертер, чтоб база при переносе конвертировалась в BB-код. Данный скрипт написан на perl-e, но главное там регулярные выражения уже продуманы. Перловый исходник

Изменено panoptus (2009-06-12 18:32:46)

Не в сети

#15 2009-06-12 19:07:02

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

panoptus, ты можешь в новостях и HTML использовать, особенно в тех, которые мигрируешь.
проблем будет значительно меньше.

Не в сети

#16 2009-06-12 21:59:03

panoptus
Участник
Откуда Украина, Николаев
Зарегистрирован: 2009-02-18
Сообщений: 159
Рейтинг :   
Сайт

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

vitaly пишет:

panoptus, ты можешь в новостях и HTML использовать, особенно в тех, которые мигрируешь.
проблем будет значительно меньше.

Очень логично. Но все таки хотелось бы опционально добавить возможность конвертирования, ибо тогда новости "редактабельны"

Не в сети

#17 2009-06-12 23:14:29

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

panoptus, а что мешает редактировать новости с HTML'ем?
Ставим в новости галочку "разрешить HTML код" и вуаля... или ты имеешь в виду, что при конвертации в BB коды редактировать их станет удобнее?

Не в сети

#18 2009-06-13 00:17:07

panoptus
Участник
Откуда Украина, Николаев
Зарегистрирован: 2009-02-18
Сообщений: 159
Рейтинг :   
Сайт

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

при конвертации в BB коды редактировать их станет удобнее

именно
Кстати сейчас скрипт импортирует базу с флагом "разрешить HTML код"

Не в сети

#19 2009-11-16 11:27:07

Set
Участник
Откуда Украина
Зарегистрирован: 2009-02-16
Сообщений: 13
Рейтинг :   

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

Возможно адаптировать этот фал чтоб с DLE 8.2 переносило базу? новости вроде переносит норм только полная и краткая новость картинку отображает
главную и там и там a475a55a51ea66f2027e4fa94503b3e2_preview.png
статические страницы не переносит и имейджы не переносит и категории ручками создавал они не перенеслись .. но после того как создал ссылки на новости нормально отображаться стали.

Изменено Set (2009-11-16 11:28:11)

Не в сети

#20 2009-12-18 12:28:50

Trashcka
Участник
Откуда КиевГрад
Зарегистрирован: 2008-12-04
Сообщений: 1,487
Рейтинг :   73 

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

Тоже встал вопрос переезда с DLE 8.0, а panoptus по ходу пропал sad

Не в сети

#21 2010-05-28 17:00:36

panoptus
Участник
Откуда Украина, Николаев
Зарегистрирован: 2009-02-18
Сообщений: 159
Рейтинг :   
Сайт

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

Я не пропал... времени нехватает... sad

только полная и краткая новость картинку отображает

это настраивается в шаблоне НЖ: уберите с шаблона news.full.tpl выражение {short-story}

Изменено panoptus (2010-05-31 22:32:04)

Не в сети

#22 2010-05-31 22:33:09

panoptus
Участник
Откуда Украина, Николаев
Зарегистрирован: 2009-02-18
Сообщений: 159
Рейтинг :   
Сайт

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

Для дальнейшей работы нужна наполненнпя база данных под ДЛЕ 8.0/8.2
Кто может предоставить для тестов?

Изменено panoptus (2010-06-10 12:34:15)

Не в сети

#23 2010-07-20 22:41:02

enotik
Участник
Зарегистрирован: 2010-07-04
Сообщений: 6
Рейтинг :   

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

А можно наоборот? из NGcms в любую другую? WP\DLE\E-107 ?

Не в сети

#24 2010-07-20 23:17:30

Wolverine
Модератор
Откуда Домодедово
Зарегистрирован: 2008-10-13
Сообщений: 3,538
Рейтинг :   160 
Сайт

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

Можно, но такие конвертеры надо искать на форумах поддержки необходимых тебе скриптов. И они вряд ли существуют smile

Не в сети

#25 2011-04-09 14:00:51

upro12
Участник
Зарегистрирован: 2011-04-09
Сообщений: 2
Рейтинг :   

Re: Как перенести базу данных с DLE на NG CMS (полуавтоматический скрипт)

Ап, может кто переделает под версию 9.2. Очень охото переехать.

Не в сети

Подвал раздела

Работает на FluxBB