Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

MySQL - polskie znaki i krzaki pod phpMyAdmin

1,225 views
Skip to first unread message

Naten...@gmail.com

unread,
Aug 24, 2008, 4:15:30 PM8/24/08
to
Witam. Zwracam się do Was o pomoc, bo jakoś sam nie mogę sobie z tym
poradzić. Pracuję nad pewnym serwisem, zainstalowałem sobie na kompie
na którym go tworzę pakiet Wampserwer zawiarający m.in. serwer apache,
php oraz MySQL w wersji 5.0.51a. Wszędzie gdzie tylko się dało
poustawiałem kodowanie utf-8. Ustawiłem takie kodowanie we wszystkich
wpisach pliku my.ini dotyczących kodowania, oraz wszędzie się dało
poprzez panel phpMyAdmin. Na razie wszystko działa lokalnie, piszę
sobie kod i go sprawdzam na localhost.
No i niestety pomimo moich starań mam jakiś problem z kodowaniem
polskich znaków.
Tworzę sobie nową bazę, nową tabelę, wszystko w utf8, a następnie
wpisuję do tej bazy tekst z polskimi znakami przez stworzoną przeze
mnie stronę www, z charsetem ustawionym też na utf-8 w sekcji <meta >.
Następnie pobieram sobie ten tekst z bazy na inną stronę www, też z
charsetem zdefiniowanym na utf-8 i niby jest wszystko dobrze, ponieważ
polskie znaki wyświetlają sie prawidłowo na tej stronie www.
Ale jest jednak pewien problem, ponieważ gdy wchodzę sobie do tej
tabelki przez phpMyAdmin i wyświetlam jej zawartość to zamiast
polskich liter mam niestety krzaczki. Tak jakby dane były w bazie
zapisane właściwie (no bo przecież po wysłaniu ich na strone
wyświetlają się ok), ale był problem z ich właściwym wyświetleniem pod
phpMyAdmin. A sprawdziłem w źródle panelu phpMyAdmin, że w znaczniku
meta jest też wpisane właściwe kodowanie, czyli utf-8. Podobny
problem, tylko w drugą stronę pojawia się, gdy edytuję zawartość
jakiejś komórki za pomocą phpMyAdmin. Jeśli w ten sposób wpiszę jakiś
tekst z polskimi znakami, to będzie się on wyświetlał poprawnie pod
phpMyAdmin, ale po wysłaniu go do pliku php mam w przeglądarce www
krzaczki w miejscu polskich literek. Czyli ewidentnie gdzieś coś nie
jest jeszcze do końca ustawione właściwie na utf8, a ja nie mam
pojęcia gdzie :( Czy ktoś wskaże mi jakis trop?
Pozdrawiam
N.W.

Naten...@gmail.com

unread,
Aug 26, 2008, 6:40:22 AM8/26/08
to
Na razie zero odzewu więc odpowiem sobie sam.
Jeszcze tego nie sprawdziłem bo nie mam teraz takiej możliwości, ale
wiele osób pisze, żeby w takiej sytuacji zaraz po funkcjach
mysql_connect() i mysql_select_db() dodawać linijkę:
mysql_query("SET NAMES 'utf8'");
Sprawdzę czy to działa wieczorem i poinformuję na grupie.
Pozdrawiam
N.W.

Naten...@gmail.com

unread,
Aug 27, 2008, 5:06:16 AM8/27/08
to
Zadziałało.
Mam już wszędzie polskie znaki w utf-8, zarówno przy wpisywaniu "z
palca" do bazy przez phpMyAdmin,
jak i poprzez formularze na stronach tekst zapisuje sie w bazie
poprawnie, tekst pobierany z bazy
też wyświetla się poprawnie z polskimi znakami na www.
0 new messages