Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]problem z kodowaniem
Forum PHP.pl > Forum > Przedszkole
sazian
witam
mam plik php w którym jest kodowanie utf-8(plik był pisany w tym kodowaniu i jest ustawione takie na strone)
plik ten pobiera dane z bazy MySQL z tabeli z kodowaniem utf8_polish_ci (ustawione zarówno dla całej bazy, tabeli jak i pola)

po wyświetleniu teksu na strone (tego z bazy) zamiast polskich liter mam pytajniki i inne krzaczki
wiecie dlaczego tak się dzieje questionmark.gif
erix
Cytat
plik ten pobiera dane z bazy MySQL z tabeli z kodowaniem utf8_polish_ci (ustawione zarówno dla całej bazy, tabeli jak i pola)

A kodowanie dla połączenia?

Poszukaj na forum, było już mnóstwo takich tematów, a już na pewno był w tym tygodniu w Przedszkolu.
sazian
jeśli chodzi o polecenia:
  1. SET CHARACTER SET utf8
  2. SET collation_connection = utf8_general_ci

to nie pomogło sad.gif
erix
A przy imporcie danych?
sazian
co ma na myśli mówiąc przy imporcie questionmark.gif
erix
No, jakoś musiałeś dodać do bazy te dane...
sazian
dane wprowadzałem przez phpmyadmin w którym kodowanie to również utf-8
erix
A jakie kodowanie do połączenia?

Zalinkuję do siebie: http://eriz.pcinside.pl/weblog/phpmyadmin-...e-znaki-91.html
sazian
może przedstawię to bardziej obrazowo
strona główna phpmyadmin:


tabele

zakładka operacje

jedna z tabel

dane w tabeli

strona

i na stronie
  1. <!DOCTYPE html
  2. PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  3. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  4. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
  5. <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />

chyba wszystko smile.gif
batman
Cytat(sazian @ 22.06.2008, 18:55:54 ) *
dane wprowadzałem przez phpmyadmin w którym kodowanie to również utf-8

Z doświadczenia wiem, że dane wprowadzone przy pomocy panelu phpmyadmin nie zawsze są kodowane tak jak powinny. Taką samą sytuację miałem w weekend. Wszystko utf, ale po pobraniu danych z bazy pokazały się krzaki. Dodaj przykładowe dane z polskimi danymi przez Twój skrypt (nie phpmyadmin) i zobaczysz, że wszystko ładnie się doda.
Pilsener
Dokładnie - złe dane są w bazie, to nie jest wina ustawień kodowania. Spróbuj wykryć kodowanie funkcjami typu mb_detect_encoding. Jeśli nie da się poprawić danych, to pozostaje przekonwertować funkcją typu iconv.
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.