| Termin | Definicja |
|---|---|
| znaki specjalne w treści | Znaki specjalne w treści wymagają kodowania UTF-8, by wyświetlić się prawidłowo u wszystkich odbiorców. Znaki specjalne a kodowanie znaków w UTF-8Znaki specjalne w treści to znaki, które nie należą wyłącznie do podstawowego zestawu liter alfabetu łacińskiego. W polskich tekstach należą do nich między innymi ą, ć, ę, ł, ń, ó, ś, ź i ż, a także cudzysłowy typograficzne, półpauzy, symbole walut, znaki matematyczne oraz emoji. Aby taki tekst był odczytywany prawidłowo na różnych komputerach i w różnych programach, dane muszą mieć określone kodowanie znaków. UTF-8 jest kodowaniem Unicode o zmiennej długości: pojedynczy znak zajmuje od jednego do czterech bajtów. Znaki ASCII, takie jak podstawowe litery angielskie, cyfry i część znaków interpunkcyjnych, zajmują jeden bajt, natomiast wiele znaków używanych w języku polskim zajmuje dwa bajty. Samo zapisanie tekstu w UTF-8 nie wystarcza, jeśli program odbierający dane interpretuje bajty jako inne kodowanie. Wtedy zamiast polskich liter mogą pojawić się ciągi takie jak „ó” zamiast „ó” albo znaki zastępcze wyświetlane jako kwadrat. W dokumencie HTML kodowanie powinno być jednoznacznie zadeklarowane, na przykład przez element Znaki zarezerwowane w kodzie HTMLNiektóre znaki specjalne mają w HTML znaczenie składniowe i nie mogą być wpisywane w treści bezpośrednio w każdej sytuacji. Znak mniejszości rozpoczyna znacznik, dlatego w zwykłym tekście zapisuje się go jako encję Rozróżnienie między tekstem a kodem ma znaczenie także przy generowaniu strony przez aplikację. Dane wprowadzone przez użytkownika nie powinny być składane w HTML przez proste łączenie ciągów znaków. Wartość przeznaczona do wyświetlenia w treści elementu trzeba kodować zgodnie z kontekstem HTML, a wartość przeznaczona do atrybutu musi być bezpiecznie osadzona w tym atrybucie. W aplikacjach korzystających z bibliotek szablonów należy rozumieć, kiedy automatyczne escapowanie jest aktywne, a kiedy zostało wyłączone. Błędne potraktowanie znaków takich jak Przepływ znaków między formularzem, plikiem i bazą danychProblemy ze znakami specjalnymi często powstają na granicy kilku elementów systemu. Przeglądarka wysyła dane formularza w określonym kodowaniu, serwer odczytuje bajty i tworzy ciąg znaków, a następnie aplikacja może zapisać go w bazie danych, pliku albo przesłać do zewnętrznego interfejsu API. Każdy etap powinien zachować tę samą, jasno określoną interpretację tekstu. W HTML formularza można wskazać Odrębną kwestią jest kodowanie adresów URL. Znaki takie jak spacja, znak zapytania, ampersand czy polskie litery muszą być przekazane zgodnie z regułami kodowania procentowego, na przykład spacja może zostać przedstawiona jako Rozpoznawanie i usuwanie błędów wyświetlaniaDiagnostykę warto rozpocząć od sprawdzenia rzeczywistych bajtów oraz informacji o kodowaniu, a nie od samego wyglądu tekstu na ekranie. W systemie Windows polecenie Trzeba również odróżnić błąd kodowania od problemu z fontem lub normalizacją Unicode. Jeśli bajty są prawidłowe, ale krój pisma nie zawiera danego glifu, znak może zostać pokazany jako prostokąt, mimo że tekst jest zapisany poprawnie. Ten sam widoczny znak może być zapisany jako pojedynczy znak Unicode albo jako sekwencja znaku podstawowego i znaku łączącego. Przy porównywaniu, wyszukiwaniu i walidacji danych aplikacja może więc potrzebować normalizacji, na przykład do postaci NFC. Podczas naprawy strony lub komputera należy prześledzić cały łańcuch: źródłowy plik, deklarację HTML, nagłówki HTTP, sposób odczytu formularza, zapis danych oraz użyty font. Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów PC i podzespołów, w tym diagnostyką problemów z wyświetlaniem oraz obsługą polskich znaków w używanym oprogramowaniu. |