REKLAMA: Jeśli już potrafisz tworzyć strony internetowe, wejdź na blog z poradami dla średnio-zaawansowanych webmasterów www.PomocnikWebmastera.pl |
Zauważyłem, że na niektórych serwerach nie działa HTMLowa konstrukcja: <META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=windows-1250">
Pomimo tego nagłówka dokumenty są jakby na siłę kodowane np. w
ISO-8859-2 i serwer ignorując ten nagłówek powoduje, że zamiast polskich ogonków
są krzaczki. Są dwa rozwiązania tego problemu: albo trzeba zmienić kodowanie
polskich znaków na takie, jakie serwer wymusza, albo można dodać w PHP
odpowiednią dyrektywę. Tutaj niestety jest problem, gdyż pliki muszą mieć
rozszerzenie PHP, aby mogły być przesyłane przez interpreter PHP. Ewentualnie na
niektórych serwerach można w pliku .htaccess dodać taką linijkę:
addtype application/x-httpd-php .html .htm
Ta dyrektywa powoduje, że serwer pliki z rozszerzeniem htm i html będzie traktował tak jakby to były pliki z rozszerzeniem php (będzie je przepuszczał przez interpreter PHP). Następnie w pliku PHP/HTML na samym początku (nie może być wcześniej żadnych znaków, ani spacji ani enterów) należy dać taką wstawkę:
<?
header("Content-Type: text/html; charset=windows-1250");
?>
Ta wstawka powoduje wymuszczenie odpowiedniego kodowania (w tym wypadku windows-1250)