Skocz do zawartości

Hosting dHosting.pl - 10% rabat! :-)

WSPIERAJ forum :)

Slovak

Konwersja z phpBB 3.1 do IP.Board 4.1

Rekomendowane odpowiedzi

Mam dość niecodzienny problem, po konwersji użytkownicy nie mają wcale swoich PW z poprzedniego skryptu forum. Sprawdziłem bazę danych i wszystkie wpisy są w bazie danych, ale nie wyświetlają się na forum. I szczerze nie wiem w którym miejscu szukać problemu. Ktoś spotkał się z podobnym problemem? 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Hej,

sprawdź czy się ID autorów wiadomości (w tabelach je zawierających) pokrywają z nowymi ID użytkowników (już po konwersji).

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Dnia 16.06.2017 o 10:03, DawPi napisał:

sprawdź czy się ID autorów wiadomości (w tabelach je zawierających) pokrywają z nowymi ID użytkowników (już po konwersji).

Sprawdziłem to jak już zadałem pytanie, faktycznie były pozmieniane ID. Zrobiłem od nowa konwersję i wszystko jest dobrze.

 

Kolejna dość dziwna sprawa to przekierowania, IP.Board przekierowuje stare linki działów z phpBB 3.1 na nowe, a z postami tego nie robi. Sprawdziłem w oficjalnym supporcie i nie ma nigdzie dodatku Redirect z phpBB do nowej wersji IP.Board. 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Podaj przykładowy link jaki nie jest przekierowywany.

W nowym IPS to wszystko się dzieje na poziomie aplikacji Convert - nie trzeba nic wgrywać. Oczywiście jeśli 'rozpozna' stary link. Także jeśli korzystałeś z jakiegoś dodatku SEO to być może nie załapią się te linki na automatyczne i prawidłowe przekierowanie.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Znalazłem błąd w konwerterze. Zgłoszę to, ale do tej pory możesz to sam naprawić.

Otwórz plik: applications/convert/sources/Software/Forums/Phpbb.php

Znajdź:

$oldId    = \IPS\Request::i()->tid;

Zamień na:

$oldId	= \IPS\Request::i()->tid ?: \IPS\Request::i()->t;

 

P.s. swoją drogą i KA doczekało się IP.Board. W końcu. ;)

  • Dziękuję 1

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Aaa, z tego co widzę to problem dotyczy tylko wersji 4.1.x. W 4.2 już to poprawili:

$oldId	= \IPS\Request::i()->tid ?: \IPS\Request::i()->t;

 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Można też utworzyć plik viewtopic.php w głównych katalogu forum z następującą zawartością:

<?php

require_once __DIR__ .'/init.php';
\IPS\Session\Front::i();

try
{
	$app = \IPS\Db::i()->select('app_id', 'convert_apps', [ "name='forums_phpbb'" ])->first();
}
catch(\UnderflowException $e)
{
	\IPS\Output::i()->error('node_error', '1CONV');
}

try
{
	if(isset(\IPS\Request::i()->p))
	{
		$data = \IPS\Db::i()->select('ipb_id', 'convert_link_posts', [ "foreign_id=? AND (type='posts' OR type='forums_posts') AND app=?", \IPS\Request::i()->p, $app ])->first();
		$item = \IPS\forums\Topic\Post::load($data);
	}
	elseif(isset(\IPS\Request::i()->t))
	{
		$data = \IPS\Db::i()->select('ipb_id', 'convert_link_topics', [ "foreign_id=? AND (type='topics' OR type='forums_topics') AND app=?", \IPS\Request::i()->t, $app ])->first();
		$item = \IPS\forums\Topic::load($data);
	}
	else
	{
		\IPS\Output::i()->redirect(\IPS\Http\Url::internal(''));
		exit;
	}

	\IPS\Output::i()->redirect($item->url());
	exit;
}

catch(\UnderflowException $e) { }
catch(\OutOfRangeException $e) { }

\IPS\Output::i()->redirect(\IPS\Http\Url::internal(''));

 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Tylko po co jak to wszystko robi już za nas samo IPS4? :o

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
30 minut temu, DawPi napisał:

P.s. swoją drogą i KA doczekało się IP.Board. W końcu. ;)

Po długich namowach się udało, wreszcie nie trzeba miliona dodatków, aby mieć większość funkcji :). 

Dzięki za pomoc :)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Teraz, Nikon napisał:

Po to, aby inni wiedzieli, że są też inne rozwiązania.

Tylko po co na nowo 'wynajdować koło' jak w tym przypadku?

Kod poza tym zerżnąłeś z oficjalnych plików które miały zastosowanie we wcześniejszych wersjach IPS4. Teraz IPS4 zrezygnowało z tego na rzecz lepszej metody "instaluj i zapomnij', a nie jakieś wysyłania plików, edycja etc.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
1 minutę temu, Slovak napisał:

Po długich namowach się udało, wreszcie nie trzeba miliona dodatków, aby mieć większość funkcji :). 

I najlepszy support w PL. ;)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Problem ROZWIĄZANY. Jeśli są jakiekolwiek wątpliwości, pytania proszę o założenie nowego tematu.

Wszelkie uzasadnione reklamacje/pretensje/sugestie/rady przyjmuje ekipa forum.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników, przeglądających tę stronę.

×