Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Konwersja znaków z MySQL
Forum PHP.pl > Forum > PHP
kubas1
Siemka,
otóż przejąłem po kimś pewną robote, i mam mały problem.
Otóż w bazie danych MySQL mam dane w tabelach których kodowanie jest ustawione na latin2.
Niby wszystko ok ale przy pobieraniu danych zamiast poslkich znaków mam '?'.
mb_detect_encoding wypluwa mi że jest to zakodowane w ASCII
i oto moje pytanie da się to jakoś przekowertować do *dowolnego* kodowania
żeby polskie znaki odzyskać ? Baza jest duza i manualna zmina nie wchodzi w grę.

Dzięki za wszelkie info smile.gif
Pozdrawiam,
Kuba
Blame
Cytat
Gdzie są krzaki? W bazie czy przy wyświetlaniu? Temat: MYSQL Polskie znaki
kubas1
właśnie krzaki są po stronie mysql część jest
ISO i normalnie widać a część jest '?'
da coś rady ?
Brick
Spotkałem się już kilka razy z tym problemem.
Zwykle te znaki "?" to efekt wymieszanego kodowania. Baza mogła mieć na początku kodowanie w UTF-8. Potem ktoś mógł przenosić tą bazę do nowej z kodowaniem latin2. Podczas importu wszystkie polskie znaki zakodowane w UTF zamieniły się na znaki zapytania.
Sprawdzałem to u siebie wiele razy. Gdy zapomnę przekonwertować bazę z UTF na latin i zaimportuję dane zakodowane w UTF-8 do tabeli z kodowaniem LATIN2 to mam znaki zapytania w bazie zamiast polskich liter.

Jeżeli wszystkie polskie znaki w bazie są zastąpione znakami zapytania to nie da się nic z tym zrobić. Dla pewności wyeksportuj kawałek bazy i zobacz czy w pliku są znaki zapytania czy jakieś krzaczki. Jak krzaczki to ok, można coś zrobić.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.