Skocz do zawartości

Przeniesienie bazy brak polskich znaków


jarekcda

Rekomendowane odpowiedzi

Byłem zmuszony przenieśc katalog

https://firmy.comeze.com/

z netmark na webhost.com. Brakuje polskich znaków - php żle pobiera dane z sql. Próbowałem wszystkiego: backup w phpmyadmin jako sql, gzip, przez program mysqldamper- bez skutku.

Dodaj własny artykuł na naszym blogu   https://bazafirmy.pl/blog/      , https://katalogifirm.com.pl/blog/ , https://dzialka.bazafirmy.pl/

Odnośnik do komentarza
Udostępnij na innych stronach

mysqldump --character-set=latin1|latin2|utf8 <- tu wstawić odpowiednie...

Agencja marketingowa Semgence istnieje na rynku od 2018 i odpowiada za prowadzenie działań SEO dla wielu firm małych i dużych. Prowadzimy też kampanie Google Ads - niedawno zostaliśmy sie Partnerem Google spełniając odpowiednie kryteria. Betapoint

 

 

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli w bazie ok, możesz również użyć set names w skrypcie.

Czytałem na forum o tym ale jak użyć? W skrypcie jest bardzo dużo odwołań do bazy.

Sprawdzałem po imporcie bazy na nowy serwer polskie znaki są ok. Coś się dzieje w momencie pobierania danych z bazy.

Dodaj własny artykuł na naszym blogu   https://bazafirmy.pl/blog/      , https://katalogifirm.com.pl/blog/ , https://dzialka.bazafirmy.pl/

Odnośnik do komentarza
Udostępnij na innych stronach

Set names tuż za wybraniem bazy danych. Znajdź w plikach element select_db i za nim postaraj się dodać. Powinno to być w jednym miejscu. Jeśli jest w wielu to skrypt jest do bani napisany :)

Odnośnik do komentarza
Udostępnij na innych stronach

Jest plik db conect i w wielu miejscach są do niego odwołania. A w nim:

<?

define('MYSQL_HOST','mysql17.000');

define('MYSQL_BAZA','a7802642');

define('MYSQL_HASLO','q12');

define('MYSQL_USER','a7802642');

define('MYSQL_QUERY','set names utf8');

?>

Ja dodałem ostatnią linię, nie wiem czy dobrze. Dodanie tej linii nic nie zmieniło.

Dodaj własny artykuł na naszym blogu   https://bazafirmy.pl/blog/      , https://katalogifirm.com.pl/blog/ , https://dzialka.bazafirmy.pl/

Odnośnik do komentarza
Udostępnij na innych stronach

Rozumiem że to w utf-8 masz.

Kolejno:

zrzuć w PMA na starym hostingu bazę

na nowym hostingu utwórz nową bazę, a następnie zmień jej kodowanie na utf-8

wrzuć bazę zaznaczając rodzaj importu jako utf-8

ew dodaj set names utf8 do skryptu

Nie ma szans aby po tym źle działało.

Poza tym, np. ze źródła strony

  <meta http-equiv="Content-type" content="text/html; charset=ISO-8859-2" />

Webmastering, kodowanie & programowanie

Więcej informacji na moim profilu

Zapraszam na PW

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli kodowanie ma utf-8 to nie może wysyłać nagłówka charset=ISO-8859-2" !

HTTP 200 usługi IT -> Dariusz Janicki | Realizacja serwisów www oraz oprogramowania w PHP / C# / Golang / Node.js / MySQL/ Laravel
Komory normobaryczne - normobaria.tech Wykonawca montażu i instalacji komory normobarii

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli kodowanie ma utf-8 to nie może wysyłać nagłówka charset=ISO-8859-2" !

Katalog kupiłem na allegro, zawsze się się dziwiłem , że autor zastosował kodowanie wszystkich plików .php ISO-8859-2, a mysql UTF8.

Na isfift i netmarku działa ok.

Na innych brakuje polskich znaków. Próbowałem na lokalu różnych możliwości eksport import bazy mysql i tylko jedno działa: php i mysql jako UTF8 po dopisaniu linii tak jak radził hekko:

Set names tuż za wybraniem bazy danych. Znajdź w plikach element select_db i za nim postaraj się dodać.

To teraz czeka mnie zamiana kodowania z ISO na UTF8 wszystkich plików .php.

Dodaj własny artykuł na naszym blogu   https://bazafirmy.pl/blog/      , https://katalogifirm.com.pl/blog/ , https://dzialka.bazafirmy.pl/

Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 tygodnie później...

Próbowałem wszystkich metod importu i eksportu bazy danych - bez efektu. Zawsze są znaki zapytania zamiast polskich znaków.

Ale jeżeli doda się nowy wpis są polskie znaki i jest ok.

Jeżeli z panelu admina zmienię znak zapytania na właściwą polską czcionkę wtedy jest ok.

Musiałbym w panelu admina dokonać korekt kategorii, wpisów... kupa roboty!!

Może ktoś miał podobny problem?

Dodaj własny artykuł na naszym blogu   https://bazafirmy.pl/blog/      , https://katalogifirm.com.pl/blog/ , https://dzialka.bazafirmy.pl/

Odnośnik do komentarza
Udostępnij na innych stronach

podczas importu danych z pliku musisz także ustawić odpowiednie kodowanie.

Ja jeśli mam dumpa sql'owego to robie tak (pod linuxem):

1) w linii komend łącze się z bazą danych poprzez: " mysql --user=TWOJUSER --password --database=TWOJABAZA "

2) Nastepnie wpisuje pierwsze zapytanie sql: " set names utf8; "

3) Na końcu robię właściwy import SQLa: " \. /sciezka/do/pliku.sql "

Jak na razie zawsze działało :P

pozycjonuj.png
Odnośnik do komentarza
Udostępnij na innych stronach

Jest plik db conect i w wielu miejscach są do niego odwołania. A w nim:

<?

define(\'MYSQL_HOST\',\'mysql17.000\');

define(\'MYSQL_BAZA\',\'a7802642\');

define(\'MYSQL_HASLO\',\'q12\');

define(\'MYSQL_USER\',\'a7802642\');

define(\'MYSQL_QUERY\',\'set names utf8\');

?>

Ja dodałem ostatnią linię, nie wiem czy dobrze. Dodanie tej linii nic nie zmieniło.

Źle to robisz :)

Znajdź w serwisie linijke zawierająca tekst w tym stylu :

mysql_select_db

Bezpośrednio za nią wstaw:

mysql_query(\"SET NAMES utf8\");

Może nie zadziałac jak używasz jakiś dziwnych bibliotek do obsługi mysql.

BTW. Jest to zawsze u mnie pierwsze zapytanie mysql w kazdym serwisie dokąd używam utf do kodowania serwisów :)

Odnośnik do komentarza
Udostępnij na innych stronach

podczas importu danych z pliku musisz także ustawić odpowiednie kodowanie.

Ja jeśli mam dumpa sql'owego to robie tak (pod linuxem):

1) w linii komend łącze się z bazą danych poprzez: " mysql --user=TWOJUSER --password --database=TWOJABAZA "

2) Nastepnie wpisuje pierwsze zapytanie sql: " set names utf8; "

3) Na końcu robię właściwy import SQLa: " \. /sciezka/do/pliku.sql "

Jak na razie zawsze działało ;)

Nie bardzo znam mysql- gdzie mam wpisać komendę " mysql --user=TWOJUSER --password --database=TWOJABAZA "

Muszę mieć jakiś program?

Dodaj własny artykuł na naszym blogu   https://bazafirmy.pl/blog/      , https://katalogifirm.com.pl/blog/ , https://dzialka.bazafirmy.pl/

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • 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ę. Warunki użytkowania Polityka prywatności