Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » IkonBoard и другие форумы » Ikonboard v.3 » Есть ли конвертер UBB6 -> IconBoard?

Модерирует : Antuan

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2

Открыть новую тему     Написать ответ в эту тему

lma



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну, собственно, сабж...

Всего записей: 15 | Зарегистр. 20-11-2001 | Отправлено: 16:18 09-01-2002
suslik_s_gitaroy



Хомяк под кайфом
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Нету...

Всего записей: 1791 | Зарегистр. 23-12-2001 | Отправлено: 17:39 09-01-2002
yurezg2



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
http://forum.ru-board.com/topic.cgi?forum=21&topic=0278#1

----------
http://www.krasnoznamensk.ru - это мой город!

Всего записей: 623 | Зарегистр. 27-06-2001 | Отправлено: 17:43 09-01-2002
Erick Flatcher



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
кто то, как то переносил...ну или пытался

Всего записей: 581 | Зарегистр. 12-10-2001 | Отправлено: 17:55 09-01-2002
yurezg2



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
в основном руками пришлось делать
мемебры криво перевелись.. у всех дата регистрации - 1970 год и уже прописан личный статус "пользователь", причем у всех, и не получается так чтобы борда им статусы в зависимости от кол-ва постов давала.
с топиками так вообще замаялся
но попытаться стоит:)

Всего записей: 623 | Зарегистр. 27-06-2001 | Отправлено: 09:29 10-01-2002
Bebson



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да, дело дрянь. У меня на борде слишком много всего, чтоб ручками таскать

Всего записей: 410 | Зарегистр. 18-04-2001 | Отправлено: 13:39 11-01-2002
Bebson



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Эксперимент продолжается! Напоминаю - надо перевести всё с UBB 6.01 на IB3.02
На www.ibhackers.com нашёл конвертор мемберов для UBB->IB2 и IB2->IB3.
 По быстому поставил IB2, загрузил скрипт, запустил. С моей UBB 6.01 все 930 мемберов перелетели в IB2 за 20 секунд! Малость кривовато, без статусов и некоторых полей, но это пока мелочи.
 Наковырял у себя на винте давно скачаный и успешно потеряный конвертор UBB2000a->IB2. Это для фриварной УББ - и мемберы и треды.
С ним ничего не получилось, хотя описание проще некуда, вроде того, что в своё время я давал для установки IB2.18.
Надо подправить и загрузить load_threads.pl куда сказано и в командной строке набрать perl load_threads.pl
На этом я остановился. Ну не у меня доступа к шелу на хосте! Может, чего не понял?
Пока всё. Если кому надо, чтоб не искать выложил здесь - http://www.deir.ru/files/
Завтра попробую перетащить мемберов на IB3.

Всего записей: 410 | Зарегистр. 18-04-2001 | Отправлено: 01:57 17-01-2002
Arty

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
2 Bebson
На выходных перенес форум с UBB 5.47 на IB3.01
Использовал кстати те скрипты, что ты выложил, правда подправил чуть-чуть, что бы из cgi каталога их запускать (не нужен доступ к шелу), конвертацию мемберов тоже подправил, чтобы кол-во постов и дата регистрации сохранялись. С русскими никами тоже конвертнулись нормально, правда пришлось 2 юзеров грохнуть заранее, т.к. в никах была буква "ё" русская.
 
Порядок был такой - заинсталил IB 2.19, конвертировал UBB 5.47 в нее, заинсталил IB3.01 на DBM, перенес IB 2.19 в DBM, экспорт базы сделал, при установке базы MySQL выбрал "реинстал из бэкапа", после выполнил переключение с DBM на MySQL и все...
 
В общем за исключением небольших шероховатостей, все конвертнулось нормально.

Всего записей: 13 | Зарегистр. 19-11-2001 | Отправлено: 13:02 28-01-2002
Bebson



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Arty
Очень интересно! Не мог бы исправленные скрипты выложить у себя или мне закинуть для выкладки на всеобщее обозрение?

Всего записей: 410 | Зарегистр. 18-04-2001 | Отправлено: 13:41 28-01-2002
Arty

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вот конвертация мемберов
 

Код:
 
#!/usr/bin/perl
 
#####################################################
# UBB -> Ikonboard Member convertor
#
######################################################
 
use CGI;
 
use Time::Local;
 
my $query = new CGI;
 
print $query->header;
 
print start_html;
 
### Enter the path to your UBB members dir, please remember the trailing slash!
 
$UBBmember = "/usr/home/localhost/cgi-bin/bankforum/Members/";
 
## Enter the path to the IB members dir, please add the trailing slash!
 
$ikonmember = "/usr/home/localhost/cgi-bin/ikonboard/members/";
 
### Being Program
 
$ending = ".cgi";
$membernumber = 00000001;
 
while ($membernumber < 10000){
   if ($membernumber < 10) {
      $membernumber = "0000000$membernumber";
   }
   elsif ($membernumber < 100) {
      $membernumber = "000000$membernumber";
   }
   elsif ($membernumber < 1000) {
      $membernumber = "00000$membernumber";
   }
   elsif ($membernumber < 10000) {
      $membernumber = "0000$membernumber";
   }
   if (open(UBBMEMBERINFO,"$UBBmember$membernumber$ending")){
      @ubbmemberinfo = <UBBMEMBERINFO>;
      print "Opened $UBBmember$membernumber$ending<BR>\n";
      close(UBBMEMBERINFO);
      print "Closed $UBBmember$membernumber$ending<BR>\n";
      chop (@ubbmemberinfo[0]);
      chop (@ubbmemberinfo[1]);
      chop (@ubbmemberinfo[2]);
      chop (@ubbmemberinfo[3]);
      chop (@ubbmemberinfo[4]);
      chop (@ubbmemberinfo[5]);
      chop (@ubbmemberinfo[6]);
      chop (@ubbmemberinfo[7]);
      chop (@ubbmemberinfo[8]);
      chop (@ubbmemberinfo[9]);
      chop (@ubbmemberinfo[10]);
      chop (@ubbmemberinfo[11]);
      chop (@ubbmemberinfo[12]);
      chop (@ubbmemberinfo[13]);
      chop (@ubbmemberinfo[14]);
      print "Choped 'em<BR>\n";
 
      $name = "@ubbmemberinfo[0]";
 
      print "$name<BR>\n";
 
      $realname = $name;
 
      $name =~ s/ /_/gi;
      print "$name<BR>\n";
 
      my ($month,$day,$year)=split /-/, @ubbmemberinfo[10];
      $month--;
      unless ($year < 200) {$year-=1900}
      my $since=timegm(0,0,0,$day,$month,$year);
 
      $filetocheck = "$ikonmember" . "$name$ending";
      if (-e $filetocheck) { print "Username ($realname) already taken by Ikonboard..."; next; }
 
      open(IKONMEMBERINFO,">$ikonmember$name$ending") || die ("opening the Ikonmembers directory failed, please check your paths!");
      flock(IKONMEMBERINFO,2);
         print "@ubbmemberinfo[0]|@ubbmemberinfo[1]|Member|me|@ubbmemberinfo[7]|@ubbmemberinfo[2]|@ubbmemberinfo[11]|127.0.0.0|@ubbmemberinfo[3]||@ubbmemberinfo[13]|@ubbmemberinfo[6]|@ubbmemberinfo[9]|$since|Not Posted|@ubbmemberinfo[12]|| <BR>\n";
         print IKONMEMBERINFO "$realname|@ubbmemberinfo[1]|Member|me|@ubbmemberinfo[7]|@ubbmemberinfo[2]|@ubbmemberinfo[11]|127.0.0.1|@ubbmemberinfo[3]||@ubbmemberinfo[13]|@ubbmemberinfo[6]|@ubbmemberinfo[9]|$since|Not Posted|@ubbmemberinfo[12]||\n";
      flock(IKONMEMBERINFO,8);
      close(IKONMEMBERINFO);
      print "$realname converted to ikonboard successfully!";
 
   } else {
      print "Member number $UBBmember$membernumber$ending doesn't exist.<BR>\n";
   }
   $membernumber = $membernumber+1;
}
print " we're done \n";
print end_html;
exit;
 

 
Добавлено
А это конвертация топиков
 

Код:
 
#!/usr/bin/perl
 
#####################################################
# UBB -> Ikonboard Topics convertor
#
######################################################
 
use CGI;
 
use Time::Local;
 
my $query = new CGI;
 
print $query->header;
 
print start_html;
 
$ubb_dir='/usr/home/localhost/htdocs/ubb/Forum1';
$ikon_dir='/usr/home/localhost/cgi-bin/ikonboard/forum1';
 
opendir(DIR,$ubb_dir);
my @dir=readdir(DIR);
closedir(DIR);
 
 
 
my %postcount;
 
foreach $file (@dir)
{
 
 if ($file =~ /(\d+)\.cgi$/)
 {
 
    my $id=$1;
    $id=~s/^0+//;
    print "Processing $file :: post $id\n";
 
    open(MM,"<$ubb_dir/$file")|| print "Cannot open /$file\n";
    my @lines=<MM>;
    close(MM);
    my $def=shift(@lines);
 
    my @temp1=split /\|\|/, $def;
    my $title=$temp1[$temp1+4];
    print "Processing $title\n";
    my $starter=$temp1[3];
 
 
    my $nb,$nbv,$start_date;
 
    chomp $title;
    my ($last_poster,$last_date);
 
    open(UBB,">$ikon_dir/$id.thd")||print "Cannot write to $ikon_dir/$id.thd\n";
    for (@lines)
    {
       if (($_ eq '')||($_ eq "\n")) {next}
       my @temp=split(/\|\|/);
       $nb=$temp[1];
       $nb=~s/^0+//;
       if ($nb eq '') {$nb=0;$nbv=1} else {$nbv=$nb}
 
       my ($month,$day,$year)=split /-/, $temp[3];
       $month--;
       unless ($year < 200) {$year-=1900}
 
       $_=$temp[4];
       /^(\d\d):(\d\d) (AM|PM)$/;
       my $hour=$1;
       $hour--;
       my $min=$2;
       my $pm=$3;
 
       if ($pm eq 'PM') {$hour+=12}
 
       my $date=timegm(0,$min,$hour,$day,$month,$year);
 
       unless ($start_date) {$start_date=$date}
 
       unless ($temp[6] =~ /\n$/) {$temp[6].="\n"}
 
       print UBB "$temp[2]\|$title\|\|yes\|no\|$date\|$temp[6]";
       $last_poster=$temp[2];
       $last_date=$date;
 
       $postcount{$temp[2]}|=0;
       $postcount{$temp[2]}++;
 
    }
 
    close(UBB);
 
    push(@all,"$id\|$title\|\|open\|$nb\|$nbv\|$starter\|$start_date\|$last_poster\|$last_date");
 
    open(UBB,">$ikon_dir/$id.pl")||print "Cannot write to $ikon_dir/$id.pl\n";
    print UBB "$id\|$title\|\|open\|$nb\|$nbv\|$starter\|$start_date\|$last_poster\|$last_date";
    close(UBB);
 }
}
 
open(UBB,">$ikon_dir/list.cgi")||print "Cannot write to $ikon_dir/list.cgi\n";
for (reverse @all) {print UBB $_}
close(UBB);
 

Всего записей: 13 | Зарегистр. 19-11-2001 | Отправлено: 17:43 28-01-2002 | Исправлено: Arty, 09:31 29-01-2002
Bebson



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Гут! Попробуем!
Кстати мемберы с буквой Ё у меня перенеслись легко и без поправленых скриптов.
 
 
Добавлено
Да уж, с ходу не вышло. Вроде всё путём, а топиковый скрипт не запускается. Мемберов ещё не проверял.
Может, выше, при выкладке что-то сбилось?
Кстати, каталоги форумов в UBB не расположены в cgi - это ты видать по запаре вписал

Код:
$ubb_dir='/home/localhost/cgi/forum/Forum1';

Давай по-порядку. Заодно состряпаем нормальную инструкцию по-русски - многим пригодится.
1. Это *.pl или *.cgi - если это имеет значение.
2. CHMOD - 755 или 777 - ну это фигня, можно и перебрать.
3. Закачиваем по очереди в каталоги форумов UBB, начиная с Forum1
4. Не забываем переписывать каждый раз номер форума в путях.
 
Типа того. Опыт написания инструкций для чайников у меня есть (сам такой ), так что получится решение проблемы для всех желающих!

Всего записей: 410 | Зарегистр. 18-04-2001 | Отправлено: 22:28 28-01-2002
Arty

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
2 Bebson
Ок
1) Ежли на NT - то .pl (я на локалке, на NT, отрабатывал с .pl), а так - .cgi
2) CHMOD - 755, ежли хостер в cgi разрешает 777 то можно и 777.
3) В том то и дело, шо не не надо в каждый из каталогов форумов UBB закачивать Т.е.

Цитата:
Кстати, каталоги форумов в UBB не расположены в cgi

я помню, мне просто влом было в каждый каталог скрип закачивать, вот и переделал шо в cgi-bin можно просто закинуть.
У меня порядка 18 форумов на борде, я сделал 18 файлов типа thr2ib01.cgi, thr2ib02.cgi и т.д. с путями правильными внутри и по очереди их вызывал (тупо, в браузере типа - http://www.mysite.com/cgi-bin/thr2ib01.cgi. При этом на экран выдает инфо о сконвертированых топиках.
 
Кстати, думал что не верно отрабатывает, поскольку кол-во постингов в ib после конвертации отличалось от кол-ва постингов, показываемых ubb.
Потом разобрался - ib первый постинг не считает.
Т.е. кол-во постингов в форуме ib будет меньше чем в форуме ubb  на кол-во топиков в форуме.
 
А не запускается - че пишет то?
 
Добавлено
Bebson
 
Кстати, точно Ты говоришь

Цитата:
Кстати, каталоги форумов в UBB не расположены в cgi

 
Дык по запарке просто вот так написал выше

Код:
$ubb_dir='/home/localhost/cgi/forum/Forum1';  

 
а надо было

Код:
$ubb_dir='/home/localhost/htdocs/ubb/Forum1';  

 
так понятнее и правильнее будет для примера

Всего записей: 13 | Зарегистр. 19-11-2001 | Отправлено: 01:11 29-01-2002
Arty

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
2 Bebson
Я сообщение свое с кодом подредактировал чуть-чуть, посмотришь.
Пиши, получилось че-нить или нет. Ок?

Всего записей: 13 | Зарегистр. 19-11-2001 | Отправлено: 09:33 29-01-2002 | Исправлено: Arty, 20:31 31-01-2002
Bebson



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Arty
Судя по всему, памятник на RU-BORDE тебе обеспечен!
 
Сегодня постараюсь решить железные проблемы в моей конторе. Надеюсь после обеда или ближе к вечеру займусь конвертом. Конечно, о результатах напишу!

Всего записей: 410 | Зарегистр. 18-04-2001 | Отправлено: 12:04 30-01-2002
Arty

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
2 Bebson
Ок, бум ждать результатов
 

Цитата:
Форум, который был на UBB5.47  
http://www.uabanker.net/cgi-bin/bankforum/Ultimate.cgi

 
Уже не посмотришь, я Ultimate.cgi уже заменил, а то пользователи форума жаловались шо запутаться можно - и старый видени и новый форум.

Всего записей: 13 | Зарегистр. 19-11-2001 | Отправлено: 16:11 30-01-2002
lma



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо, сконвертилось на 95% (за исключением любителей всяких $ # @ % в никах).

Всего записей: 15 | Зарегистр. 20-11-2001 | Отправлено: 08:54 01-02-2002
Arty

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Дык... не за шо
А Bebson шой-то молчит...

Всего записей: 13 | Зарегистр. 19-11-2001 | Отправлено: 15:51 01-02-2002
Bebson



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да не до того просто было - 3 дня на железки ушло, вместо одного!
Молчать не буду!

Всего записей: 410 | Зарегистр. 18-04-2001 | Отправлено: 13:44 06-02-2002
Bebson



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Приношу извинения за молчание, но у меня проблема.  
Хост изменил политику по пермишенам и у меня творится чёрт знает что. Конфа стала работать через пень-колоду, а про конвертацию и сказать нечего. Мембер-скрипт  не работает ни с какими правами, а топик-скрипт рассказывает, что не может ничего записать в директорию назначения. Ругаюсь с суппортом.

Всего записей: 410 | Зарегистр. 18-04-2001 | Отправлено: 23:13 07-02-2002
Bebson



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Значится, так.
С перетаскиванием мемберов справился. Скрипт, правленный Arty я тоже в итоге чуть поправил. Новый вариант лежит здесь - http://www.deir.org/files/ubb_ib2_top.rar
Добавил конверт титла мембера и чуть исправил синтаксис, а то выдавал 500 ERROR. Для меня это подвиг!  
Пользоваться просто - в начале скрипта правим 2 пути к каталогам мемберов и закидываем в cgi-bin на сервер в режиме ASCII. Права ставим почти любые - 770, 755, 777 - у меня работало на всех, про чужие хосты не знаю. Потом в браузере вызываем скрипт - http://www.ваш_сайт.ru/cgi-bin/ubb_ib2_top.cgi - всё!
Скрипт работает около 20 секунд, в зависимости от количества мемберов.
  Всё равно кривоват - не останавливается после конверта последнего мембера, поэтому пришлось в процессе его работы жать на клавишу END на клаве, чтобы успеть засечь конец его работы.
В итоге получаем полную бочку мемберов IB2, готовых для конвертации в IB3.  Ну это совсем просто и в красках будет описано позже, когда полностью перееду на 3. Не работает у меня перенос тредов на IB2, хоть тресни! Полдня убил. Переносит пустой trd и всё . А ведь до того работал...
 
Добавлено
Это о переносе тредов
при внимательном изучении логов сервера нашёл следующее:
 

Код:
[Tue Mar 19 20:35:01 2002] [info] [client 113.230.8.156] send timed out
Month '-1' out of range 0..11 at ubb_ib2_top.cgi line 77

Понятно, что не может разобраться с числом месяцев. Как поправить?

Всего записей: 410 | Зарегистр. 18-04-2001 | Отправлено: 00:16 19-03-2002 | Исправлено: Bebson, 21:12 19-03-2002
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2

Компьютерный форум Ru.Board » IkonBoard и другие форумы » Ikonboard v.3 » Есть ли конвертер UBB6 -> IconBoard?


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru