wjkbdg
28.01.2008, 22:07:17
siema, mam problem z kodowaniem polskich znaków w smarty. Mianowicie istnieją sobie 3 szablony, header, content i footer.tpl.
Content includeuje headr i footer. W headerze oczywiście definiuje charset, w moim przypadku utf-8. I teraz zaczyna się cała jatka.
Polskie znaki - krzaczki - poprawnie odczytywane są tylko w headerze zawierającym zdefiniowane kodowanie w pozostałych dwóch szablonach już nie.
Próbowałem dwóch znanych mi rozwiązań. Zmiana kodowania, nie przyniosła żadnego efektu, podobnie jak rozpoczynanie każdego szablonu sekcją <html><head> i ponowne definiowanie kodowanie...
W ramach testu użyłem pliku index.php, w którym:
$smarty->assign("info","ą ś ł ó ń ż ź ć ę");
po otworzeniu strony w przeglądarce i ponownym otwarciu pliku index.php tu też znikają polskie znaki czyli mam:
$smarty->assign("info","a s l o n z z c e");
podobnie z umieszczeniem tego samego tekstu w postani <span> ą ś ł ó ń ż ź ć ę <span> bezpośrednio w szablonie, bez przekazywania w zmiennej.
mam nadzieje, że ktoś będzie mi w stanie pomóc bo google niestety nie było..
Grzyw
28.01.2008, 22:31:59
Jeżeli dobrze załapałem, użyłeś sposobów:
<?php
header("Content-Type: text/html; charset=UTF-8"); ?>
i w szablonach:
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
Jeżeli tak, to pozostaje może kwestia edytora? Nie masz ustawionego kodowania na inne?
wjkbdg
28.01.2008, 23:33:09
tymczosowo używam Dreamweavera cs3, kodowanie sprawdzałem. Edytowałem też plik w Notepad++ wciąż to samo..
a żeby było zabawniej to w tym samym katalogu umieściłem plik (już nie jako szablon) test.html z kodowaniem utf-8, edytowałem go też w dreamweaverze i wszystkie litery z krzaczkami wyświetlają się poprawnie..
jakieś inne propozycje?
potreb
30.01.2008, 11:02:47
A ja ci mówię że na pewno ich poprawnie nie zapisałeś.
andrew1985
30.01.2008, 17:25:49
Też obstawiam edytor. Napewno nie zapisujesz w UTF-ie. Jak otworzysz w DW to sprawdz czy oby na pewno dobrze ci wykrył kodowanie. Z doswiadczenia wiem ze nie wykrywa on go zbyt dobrze.
W headarze masz w meta wipsane kodowanie wiec program nie ma problemu z rozpoznaniem. Z pozostałymi moze miec.
Przesiądz sie na PSPad - darmowy i dobry