Jak wspomnieli inni, musisz przekonwertować na UTF8 od końca do końca, jeśli chcesz obsługiwać znaki „specjalne”. Oznacza to twoją stronę internetową, PHP, połączenie mysql i tabelę mysql. Strona internetowa jest dość prosta, wystarczy użyć metatagu dla UTF8. Idealnie byłoby, gdyby twoje nagłówki również mówiły UTF8.
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
Ustaw PHP tak, aby używał UTF8. Prawdopodobnie wszystko i tak by zadziałało, ale jest to dobry środek, aby to zrobić:
mb_internal_encoding('UTF-8');
mb_http_output('UTF-8');
mb_http_input('UTF-8');
W przypadku mysql chcesz przekonwertować tabelę na UTF8, bez potrzeby eksportowania/importowania.
ALTER TABLE table_name CONVERT TO CHARACTER SET utf8
Możesz i powinieneś skonfigurować mysql do domyślnego utf8. Ale możesz też uruchomić zapytanie:
SET NAMES UTF8
jako pierwsze zapytanie po nawiązaniu połączenia, które „przekonwertuje” połączenie z bazą danych na UTF8.
To powinno rozwiązać wszystkie problemy z wyświetlaniem postaci.