Polskie znaki

Autor: Maciej Skrobiński, dodano: 08-03-2004
Kategoria: Programowanie i tworzenie

Tworzenie stron internetowych niesie ze sobą różne niespodzianki. Jedną z nich jest to, że odwiedzający twoją stronę informują Cię o braku polskich literek - a przecież na twoim komputerze wszystko było dobrze.

Aby uniknąć takich niespodzianek należy zapoznać się z kodowaniem znaków. Jest to bardzo ważne, ponieważ takie niedociągnięcie może zniechęcić internautów do odwiedzenia naszej strony. Robione przez nas strony na naszych komputerach wyglądają najczęściej poprawnie. Piszę najczęściej, ponieważ bywa, że po zdeklarowaniu odpowiedniego kodowania dalej nie zobaczymy polskich znaków. Dzieje się tak, jeśli używamy systemu Windows i stronę zapisujemy w notatniku. Spowodowane jest to innym kodowaniem liter polskich przez ten system. Jeżeli jednak chcesz, aby strona była kodowana w ten sposób powinieneś wpisać:

<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1250">
</head>


Taki zapis może spowodować i raczej spowoduje błędne wyświetlenie polskich znaków na innych systemach niż Windows. Chyba, że twórca strony jest pewien, że odwiedzający jego stronę będą posiadali taki system operacyjny.

Inną metodą i wydawać by się mogło najbardziej słuszną jest stosowanie kodowania iso-8859-2. Jest to standard zgodny z Polską Normą. Dlatego powinniśmy stosować takie rozwiązanie. Pełny zapis takiego kodowania wygląda tak:

<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-2">
</head>


Każdy, kto tworzy strony powinien w ten sposób kodować polskie litery.

Aby zrozumieć, dlaczego oba te zapisy powodują różne wyświetlanie polskich znaków należy zapoznać się z kodowaniem liter. Wciskając dowolną literę na klawiaturze nie informujemy komputer, że wcisnęliśmy np. M tylko liczbę o numerze 77. Jeśli wpiszemy w dokumencie HTML M otrzymamy literę M. Tak więc widzimy, że każda litera ma przypisany odpowiedni numer. I tu już możemy się domyślić, dlaczego są różnice w wyświetlaniu niektórych liter pomiędzy tymi dwoma zapisami kodowania. Odpowiedź jest prosta jeden i drugi polskie litery odczytuje jako inne numery i inaczej je wyświetla.

Jeśli ktoś po przeczytaniu tego artykułu koniecznie chce zmienić kodowanie na swojej stronie nie musi zmieniać każdej polskiej literki. Wystarczy zaopatrzyć się w edytor, który potrafi przekonwertować z jednego kodowania na inne. Dostępnych jest wiele takich edytorów jednym z nich jest EdHTML. Jest to polski edytor i każdy sobie bez problemu poradzi z tym zadaniem.

Na koniec mogę tylko mieć nadzieję, że wybierzesz odpowiednie kodowanie. A to może się w końcu przyczyni do stosowania jednego standardu.

Ocena 2.58/5 (51.51%) (563 głosów)

Komentarze:

  • UTF-8
    Dodał: Walking In The Darkness data: 2009-09-16
    iso-8859-2? "Kazdy, kto tworzy strony powinien w ten sposob kodowac polskie litery."?

    artykul jest z 2004 roku - moze przy okazji nowej szaty serwisu przydalyby sie male uaktualnienia? az wstyd ;-) ze tu nie ma ani slowa o UTF-8 prawda?
  • UTF-8
    Dodał: Azgheros data: 2009-12-30
    Popieram. Nie ma co sobie zaprzątać głowy iso-8859-2, ani innymi typami kodowania. aktualnie standardem jest UTF-8 i to niego trzeba się trzymać.
  • UTF-8
    Dodał: Welon data: 2010-01-03
    Moim zdaniem iso-8859-2 jest bardzo aktualny.
    Pod warunkiem, że nie będziemy potrzebować innych znaków niż te które są zawarte w iso-8859-2.
    Wtedy dopiero należy używać UTF-8, gdyż to kodowanie zawiera wiele znaków specjalnych z całego świata.
    ALE każdy znak w UTF-8 "waży" dwa razy tyle co jego odpowiednik w iso-8859-2. (Tak jak w SMSach)
    Także jeśli mamy wiele odwiedzin na naszej stronie, powinniśmy brać to pod uwagę, że strony kodowane w UTF-8 podwoją nam wykorzystany transfer.
  • UTF-8
    Dodał: Gość data: 2010-04-16
    No chyba nie 'każdy' znak w UTF-8 waży 2 razy tyle co w ISO-8859-2 :) ? W przypadku wykorzystania naszego rodzimego języka, różnica w wielkości plików nie powinna być nazbyt znacząca.
  • UTF-8
    Dodał: V3rTiG0 data: 2010-12-16
    W Unicodzie rzeczywiście każdy znak "waży" 2 bajty. Tyle, że mowa jest wtedy o UTF-16. Jeśli zaś nie pisze się strony w języku chińskim czy japońskim to znaki zajmują 1-2 bajtów, a że najczęściej używa się znaków ASCII aniżeli znaków narodowych to średnio na znak przypada może z 1,1 bajta ;-)

  • Dodał: Gość data: 2012-03-04
    Jeśli stronę tworzy się w XHTML i CSS to wtedy ISO, a jak już dodajemy PHP to UTF-8.


Dodaj komentarz:


Temat:
Twój nick:
Komentarz:
 

Prosimy o kulturę wypowiedzi. Komentarze zawierające niecenzuralne zwroty, bądź obrażające inne osoby będą usuwane. Kod HTML w wypowiedziach jest niedozwolony. Wydawca nie odpowiada za treść komentarzy.