Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

Połączenie dwóch baz danych


Przejdź do rozwiązania Rozwiązane przez DawPi,

Rekomendowane odpowiedzi

Opublikowano

Witam.

 

 

Mam pewien problem z bazami danych. Posiadam forum IPB 3.4.6 oraz bazę danych na komputerze w formie pliku SQL. Moje pytanie brzmi: jak połączyć bazę danych tą z pliku do posiadanego forum? W sumie potrzebne mi tylko najważniejsze dane: posty, tematy, użytkownicy.

Opublikowano (edytowane)

Wersja forum w zrzucie to 3.4.6

 

 

Za chwilę planuję aktualizację swojego forum do 3.4.7

Edytowane przez C47
Opublikowano (edytowane)

Nooo, dajcie spokój, nie wierze, że nikt nie wie... Raczej nikomu się nie chce?

Edytowane przez C47
  • Manager
  • Rozwiązanie
Opublikowano

Również nie wierzę, że chcesz się podjąć tak dość złożonego procesu, a poszukać Ci się nie chce.

 

http://forum.invisionize.pl/topic/31353-polaczenie-uzytkownikow-z-2-baz-mysql/?p=190938

  • Lubię to 1

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Opublikowano (edytowane)

Dzięki za link.

 

 

Gdzie znajduje się ten konwerter? Bo to chyba nie jest to: http://www.invisionpower.com/convert? Pobierałem to ale nie umiem się tym posługiwać. W tym momencie mam forum na 3.4.7 i bazę w pliku sql w wersji 3.4.6

 

 

edit:

 

co w przypadku gdy na moim forum są inne tabele niż w pliku sql? wystarczy inny mod i już pewnie kolejność zostanie zmieniona lub jakaś kolumna dodana...

Edytowane przez C47
Opublikowano

No dobrze, mam wgraną tą aplikację ale co dalej żeby połączyć dwie bazy? Jedyne co mi przychodzi do głowy to: Converting IP.Board 3.2+ to IP.Board tylko co dalej?

  • Manager
Opublikowano

Szczerze? Nie ruszaj tego sam, bo więcej możesz zepsuć niż naprawić.

 

Najlepiej zrób sobie to testowo, np. na localhoście, a dopiero potem, jak już zrozumiesz jak działa ten mechanizm, na żywych organizmie.

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Opublikowano (edytowane)

Dobra, wgrałem bazę do serwera i dałem konwersję, jedynie, ze teraz mam problem z polskimi znakami, z tego co widzę obie bazy są w UTF8 więc przy konwersji wybieram to UTF8 (taka rozwijana lista gdzie mam wpisać kodowanie) ale źle się to konwertuje bo bez polskich znaków :/

 

 

Oczywiście mam kopię sprzed konwersji

Edytowane przez C47
Opublikowano

Niestety nie da się edytować posta bo bym poprawił tylko poprzedni...

 

 

Chyba jednak nie są obie bazy w tym samym kodowaniu.

 

 

 

W mojej bazie jest tak: 

DROP TABLE IF EXISTS `admin_login_logs`;/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `admin_login_logs` (
  `admin_id` int(10) NOT NULL AUTO_INCREMENT,
  `admin_ip_address` varchar(46) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0.0.0.0',
  `admin_username` varchar(40) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
  `admin_time` int(10) unsigned NOT NULL DEFAULT '0',
  `admin_success` int(1) unsigned NOT NULL DEFAULT '0',
  `admin_post_details` text COLLATE utf8_unicode_ci,
  PRIMARY KEY (`admin_id`),
  KEY `admin_ip_address` (`admin_ip_address`),
  KEY `admin_time` (`admin_time`)
) ENGINE=MyISAM AUTO_INCREMENT=132 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;

A bazie w pliku jest tak: 

CREATE TABLE IF NOT EXISTS `admin_login_logs` (  `admin_id` int(10) NOT NULL auto_increment,
  `admin_ip_address` varchar(46) NOT NULL default '0.0.0.0',
  `admin_username` varchar(40) NOT NULL default '',
  `admin_time` int(10) unsigned NOT NULL default '0',
  `admin_success` int(1) unsigned NOT NULL default '0',
  `admin_post_details` text,
  PRIMARY KEY  (`admin_id`),
  KEY `admin_ip_address` (`admin_ip_address`),
  KEY `admin_time` (`admin_time`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin2 AUTO_INCREMENT=1431 ;
Opublikowano (edytowane)

Więc tak, zmieniłem sobie kodowanie i scaliłem obie bazy, wszystko jest OK, niestety jest jedno ale: czasami przy wejściu w profil lub temat wywala na górze forum takie oto błędy: 

Warning: array_merge(): Argument #2 is not an array in /home/cscentru/public_html/xxx/sources/classes/bbcode/core.php on line 1375

Warning: array_merge(): Argument #2 is not an array in /home/cscentru/public_html/xxx/sources/classes/bbcode/core.php on line 1375

Warning: Cannot modify header information - headers already sent by (output started at /home/cscentru/public_html/xxx/sources/classes/bbcode/core.php:1375) in /home/cscentru/public_html/xxx/sources/classes/output/formats/html/htmlOutput.php on line 114

Warning: Cannot modify header information - headers already sent by (output started at /home/cscentru/public_html/xxx/sources/classes/bbcode/core.php:1375) in /home/cscentru/public_html/xxx/sources/classes/output/formats/html/htmlOutput.php on line 127

Warning: Cannot modify header information - headers already sent by (output started at /home/cscentru/public_html/xxx/sources/classes/bbcode/core.php:1375) in /home/cscentru/public_html/xxx/sources/classes/output/formats/html/htmlOutput.php on line 136

Warning: Cannot modify header information - headers already sent by (output started at /home/cscentru/public_html/xxx/sources/classes/bbcode/core.php:1375) in /home/cscentru/public_html/xxx/sources/classes/output/formats/html/htmlOutput.php on line 137


Warning: Cannot modify header information - headers already sent by (output started at /home/cscentru/public_html/xxx/sources/classes/bbcode/core.php:1375) in /home/cscentru/public_html/xxx/sources/classes/output/formats/html/htmlOutput.php on line 141

Które powodują, że całe kodowanie polskich znaków trafia szlag, wszystko jest bez polskich znaków (stopka, menu, treść, wszystko).

Edytowane przez C47
Opublikowano

Dokładnie takie coś: 

$_memberData = array_merge( $_memberData, $this->caches['group_cache'][ $this->parsing_mgroup ] );

 

ale to jest zamknięte:

 //-----------------------------------------// Fix line breaks
//-----------------------------------------


if ( $this->parse_html )
{
$txt = str_replace( "~~~~~_____~~~~~", '<br />', $txt );
}


$_memberData = array( 'member_group_id' => $this->parsing_mgroup, 'mgroup_others' => $this->parsing_mgroup_others );


if( $this->parsing_mgroup )
{
$_memberData = array_merge( $_memberData, $this->caches['group_cache'][ $this->parsing_mgroup ] );
}


if( $this->parsing_mgroup_others )
{
$_memberData = ips_MemberRegistry::setUpSecondaryGroups( $_memberData );
}
Opublikowano

dobra, naprawiłem to sobie nawet.

 

 

jeszcze mam pytanie, zmieniłem w tabelach poprzez zamianę (replace) dane w postach i przy edytowaniu posta są one OK ale przy wyświetlaniu dalej pokazuje stare wartości, jak to poprawić?

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.