Mam serwis oparty na systemie szablonów *.tpl czyli Smarty. Od dłuższego czasu temat kodowania znaków był mi zupełnie obojętny gdyż wszystko wyświetlało się jak należy (byli polskie znaki itd). Od razu powiem, że system CMS, który zarządza moim serwisem ma kodowanie ISO 8859-2. Wszablonie tpl o nazwie head.tpl gdzie mam wszystkie head’owe rzeczy również jest kodowanie:
Kod
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-2"/>
I tak jak wspomniałem wcześniej w ogóle na to nigdy nie zwracałem uwagi, aż tu parę miesięcy temu gdy zaktualizowałem Firefoxa do jakiejś nowszej wersji zaczęły się problem, a mianowicie, gdy wchodze na moj serwis albo od razu, albo dopiero gdy pochodze po jego podstronach pojawia mi się taki oto błąd jak widać poniżej.

Poczytałem o tym błędzie w necie, m.in. w pomocy technicznej Mozilli. Nić mądrego tam raczej nie wyczytałem. Proponują po pierwsze w firewallu ustawic w kotroli programow firefoxa na YES czyli zezwolic mu na wszystko. No to jest chyba logiczne, bo jakby był zablokowany to zadnej strony bym nie otworzyl. Oprócz tej jakze cennej rady wyczytałem, ze należy przeisntalwoac firefoxa czy coś tam tego typu jeszcze. Oczywiście to wszystko bzdury. Jeszcze oprocz mojego pcta testowalem ten blad z mojego laptopa i sytuacja jest taka sama. Na obydwu komputerach mam zainstalowanego Norton Internet Security ale nie chce mi się Wierzyc ze to jego wina. Zwlaszcza, ze wszystkie inne strony oprocz wlasnie tego mojego serwisu przegladam normalnie i nigdzie takiego bledu nie miałem. Tak więc olałem nowszą wersję firefoxa i zaisntalwoalem u siebie powrotem wersje Firefox 12 – na tej wersji wszystko smiga jak należy. Oprocz pomocy technicznej mozilli poczytałem jeszcze conieco w innych miejscach i sporo osob ma dokaldnie ten sam problem, a raczej mialo bo to były raczej starsze posty na forach. Oni mieli tego typu problemy nawet przy allegro czy dobre programy.pl. Wiec pocieszyłem się, ze to może nie jest wina mojego serwisu tylko cos z tymi przeglądarkami nie tak jest? Zwłaszcza ze od moich czytelnikow nie miałem zadnych sygnałów ze cos jest nie tak z moja strona. No więc dzisiaj postanowiłem zaktualizowac firefoxa do najnowszej 17 wersji licząc ze to był jakis Bug przeglądarki, no ale niestety nie. Problem cały czas jest ten sam…
Owy bład daje mi do zrozumienia, że jest jakiś błąd z kodowaniem mojej strony, wiec pomyślałem, że może warto zmienić z tego ISO-8859-2 na UTF-8. Może wtedy problem zniknie gdy to kodowanie będzie nowsze. Tak też zrobiłem, a mianowicie w pliku head.tpl zmieniłem mu z ISO na utf. Niestety wtedy na stronie pojawiły się zamiast polskich znaków krzaczki. Ale kraczki były tylko w tych miejscach, w których treść była generowana z CMSa. W niektórych miejscach dopisałem trochę tekstu bez CMSa, po prostu edytując jakis tam plik tpl i piszac dany tekst w jakimś tam miejscu. No i zostawiłem te krzaczki i przesiadłem się na laptopa na najnowsza wersje firefoxa żeby sprawdzic czy dziala, no ale mimo iż było utf8 i te krzaczki to dalej wyskakiwal ten blad. Stwierdzilem, ze skoro są te krzaczki a nie polskei litery to mzoe ten UTF mimo ze jest odany w META nie dziala tak jak powinien działać. Tylko nie bardzo wiem co teraz mogę zrobić, i tak oto po tym jakze długim wstepie zwracam się do was z wołaniem o pomoc…
- Jak w smartach zrobic kodowanie utf-8 żeby nie było krzaczkow?
- Czy w ogóle jest sens, że zmieniam to kodowanie, bo może ten błąd nic nie ma wspólnego z kodowaniem ISO a UTF?
- Tak jak jest obecnie czyli kodowanie ISO to tekst dodawany do strony za pomoca CMSa wyswietla się poprawnie (polskie znaki) natomiast ten tekst, który na zywca dopisałem do edytując pliki *.tpl nie maja polskich znaków. Nie ma tez krzaczków, po prostu z ł zrobiło się l i z ą zrobiło się a itd. Itd.
Pomoże mi ktoś rozwiązać ten problem, bo już kolejny dzień szperam po necie za rozwiązaniem, kombinuje i nic mi z tego nie wychodzi :
Pozdrawiam