Etil
30.08.2011, 14:59:18
W phpmyadmin, gdy dane wysyłam przez niego - wszystkie polskie znaki są wyświetlane, ale gdy wczytuje się to na stronę są krzaczki/znaki zapytania/kwadraty kieroglify... a gdy wysyłam te dane przez formularz, nawet w phpmyadminie nie wyświetla polskich znaków, tylko jakieś "zamienniki", wychodzi na to żę strona jest źle zrobiona lub formularz nie wie jak zapisać znaki do bazy...
by_ikar
30.08.2011, 15:07:44
Ehh, jeżeli chcesz to raz na zawsze rozwiązać musisz zrozumieć jedno: wszystko musi być w tym samym kodowaniu. meta w html, kodowanie plików (np php), kodowanie dla połączenia z bazą, oraz dane w bazie muszą mieć to samo kodowanie. Jak to zrozumiesz to problem z kodowaniem przestanie istnieć.
Etil
30.08.2011, 15:09:16
Zrozumiałem, więc gdzie muszę zmienić to wszystko na utf_8_polish_ci?
desavil
30.08.2011, 15:11:18
Etil
30.08.2011, 16:16:02
Ten poradnik mi się nie przyda bo nie używam PDO, co zrobić jeśli łącze się z bazą w sposób "standardowy"? Poza tym drughi link prowadzi i tak do pierwszego, po co więc podałeś 2 linki?
Dodałem na stronie:
Kod
ini_set('default_charset', 'UTF-8');
Zmieniłem każde ISO na utf-8 w pliku php.ini, w bazie mam ustawione domyślnie wszystko
na utf_8_polish.
Co jeszcze do cholery!?
darko
30.08.2011, 16:19:13
Jeszcze chociaż minimum kultury, nie wykrzykuj, jeśli prosisz o pomoc
mysql_query('SET character_set_connection=utf8_polish_ci'); mysql_query('SET character_set_client=utf8_polish_ci'); mysql_query('SET character_set_results=utf8_polish_ci');
Etil
30.08.2011, 17:08:05
Przecież nie wykrzykuję na ludzi którzy mi pomagają, tylko na ten cholerny skrypt.
Dodałem to na początku pliku i dalej to samo = dodało ł jako Å itd!
darko
30.08.2011, 17:21:14
Dobra, zrobię Ci checklistę, a Ty zaznacz ptaszkami wszystkie pozycje:
- meta charset na stronie (<meta http-equiv="content-type" content="text/html; charset=utf-8" />)
- kodowanie plików skryptów php /widoków (ogólnie wszystkich plików z kodem - edytor np. notepad++ kodowanie utf-8 bez bom)
- kodowanie dla połączenia z bazą (to, co podałem) V
- kodowanie ustawione albo dla całej tabeli albo dla pól tekstowych (w bazie)
Etil
30.08.2011, 17:44:31
Oprócz tego co napisałeś, to dodałem:
Kod
ini_set('default_charset', 'UTF-8');
W bazie, wyeksportowałem ją i mam chyba z conajmniej kilka razy:
utf8_polish_ci +
SET NAMES utf8 i dalej jest tak samo jak było...
Czy to możliwe by był jakiś inny powód?!
emajl22
30.08.2011, 20:26:30
po połączeniu z bazą daj:
w bazie ustaw kodowanie na utf8_general_ci
w plikach kodowanie utf8 bez bom
meta utf-8
musi działać
http://forum.php.pl/index.php?showtopic=18...mp;#entry895141
hipekhop
31.08.2011, 00:10:34
No i o ile możesz deklarować kodowanie takie, a nie inne, to pliki mogą mieć kodowanie inne, niż zadeklarowane w meta.
NOTEPAD ++ polecam, fajnie się w tym pisze, a i kodowanie na utf-8 możesz wygodnie zmienić. Naprawdę zmienić, a nie tylko zmienić tekst w meta
Etil
31.08.2011, 00:27:09
Ale zmieniłem kodowanie, nie tylko w meta, ale też w menu notepada!! Tak jak napisał emajl22 też zmieniłem spowrotem na UTF8_general_ci i nic! Krzaczki(przy dodawaniu nowych rekordów) nawet nie zmieniły się na inne, a co doiero na polskie znaki.
by_ikar
31.08.2011, 09:20:06
Zapytam się inaczej, kodowanie tylko z bazy jest zepsute, ale jak zapiszesz w pliku "ąśżźćęłńó" to wyświetli się to normalnie czy też jest kodowanie zwalone ?
Etil
31.08.2011, 23:18:14
O! W bazie wyświetla: "ąśżźćęłńó", ale na stronie, po wczytaniu: ąśżźćęłńó. Więc rozumiem że wiesz jak to rozwiązać?
Więc, wie ktoś czy nie?
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.