Dołącz do zespołu ekspertów! Backend lub Frontend Developer?

Sprawdź najnowsze oferty pracy naszego partnera - 8lines.io!

Po konwersji z IPBoard 3.4.x niektóre posty się nie wyświetlają

Merge System  Założony przez  Gangst3r.

Jak w temacie niektóre posty po konwersji się nie wyświetlają i zawierają treść "Click to Edit". Nawiązuje to zazwyczaj do pierwszego posta wątku lub odpowiedzi. W niektórych tematach posty tych samych użytkowników się wyświetlają poprawnie, zaś w innych już nie.

   

Jest to zwyczajna loteria i nie ma jakiegoś głębszego odniesienia do ustawień starego skryptu.
Ogółem brakuje na MyBB ok 5000 postów. Najciekawsze jest to, że id danych tematów i postów sprawdzane były w bazie MySQ mybb_posts i wszystkie wyświetlają się poprawnie oraz zawierają oryginalne treści.

Tutaj jak wygląda oryginał i zapis w bazie MySQL MyBB danego posta:
       

Wygląda to tak jakby skrypt nie potrafił odczytać wpisu z bazy MySQL.
Skrypt czysty bez pluginów oraz wykonano kilkukrotnie przeliczanie i przebudowę.
Macie jakieś pomysły?

Znalazłem przyczynę usterki ale nie mogę sobie z nią poradzić.

Powodem błędu w moim przypadku było kodowanie w pliku inc/config.php

Cytat:$config['database']['encoding'] = 'latin2';


Zamieniłem to na:

Cytat:$config['database']['encoding'] = 'utf8;


I po tym zabiegu posty się wyświetliły, ale z krzaczkami.
Poprzednie forum IPB było przenoszone z phpBB by Przemo i stąd kodowanie w latin2.

Po przenoszeniu skryptu odznaczyłem automatyczne konwertowanie do UTF8 i kodowanie poprzedniego skryptu dałem na Latin2.


Co mam teraz zrobić żeby forum działało na UTF8 i nie było krzaczków?
Problem rozwiązany!

Wykonałem kilka czynności, które pomogły mi rozwiązać problem z wyświetlaniem w losowych postach "Click to Edit" oraz krzaczki w bazie MySQL oraz na forum po próbie zmiany kodowania na UTF-8 lub UTF-8MB4.

Jesli korzystałeś z Merge System, aby przejść na MyBB a twój poprzedni silnik forum działał na kodowaniu innym niż UTF-8 to powinieneś wykonać następujące kroki, aby uniknąc problemów z poprawnym funkcjonowaniem MyBB:
1.  W polu Table Encoding: - wybieramy aktualne kodowanie tabeli w MySQL
2. Odznacz opcję
3. Przejdź przez proces konwersji.
Jeśli wszystko będzie działać poprawnie pomiń następne punkty.
4. Zaloguj się do bazy MySQL i przechodząc do operacji wykonaj zmianę kodowania na UTF-8 (utf8_general_ci) w tabelach z prefiksem mybb_
5. Wejdź do ACP MyBB i w Tools & Maintenance przejdź do UTF-8 Conversion i wybierz opcję "Convert All".
6. Edytuj kod w pliku inc/config.php i prześlij go przez FTP

$config['database']['encoding'] = 'latin2';
na
$config['database']['encoding'] = 'utf8';



Po tym zabiegu przejdziesz z dowolnego kodowania do UTF-8 na MyBB i unikniesz popularnego problemu z wyświetlaniem "Click to Edit"w postach oraz krzaczkami w bazie lub na forum.


Ten poradnik powinien poprawnie zadziałać z większością silników, które pracowały na innym kodowaniu, niż UTF-8.



Użytkownicy przeglądający ten wątek:

2 gości