Problem kodowania znaków był poruszany wielokrotnie na wielu forach, ale niestety nigdzie nie znalazłem rozwiązania, które by mi pomogło.
Posiadam stronę w 3 językach - PL, DE, EN.
Strona napisana w systemie szablonów SMARTY.
Kodowanie znaków jest w całym serwisie UTF-8:
CODE
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
<head>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
<head>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />
Kodowanie w bazie danych MySQL wygląda nastepująco:
System kodowania znaków dla MySQL: UTF-8 Unicode (utf8)
System porównań dla połączenia MySQL: utf-8_general_ci
Wszystkie tabele w bazie ma ją metodę porównywania napisów ustawioną na utf-8_general_ci
Walidator W3C pokazuje mi zero błędów i jedno ostrzeżenie
Byte-Order Mark found in UTF-8 File.
The Unicode Byte-Order Mark (BOM) in UTF-8 encoded files is known to cause problems for some text editors and older browsers. You may want to consider avoiding its use until it is better supported.
Nie martwiłbym się tym, gdyby nie to, że strona nie zawsze wyświetla prawidłowo polskie znaki.
U mnie jest ok, ale dostaję sygnały, że po wejściu na stronę sa krzaki zamiast polskich znaków, a po doświeżeniu jest już ok.
Jak mogę rozwiązać problem?
dzięki za wszelką pomoc
pozdrawiam