Nedávno jsem měl stejné problémy.
Zde je několik tipů:
- VŠECHNY atributy musí být nastaveny na ut8 (třídění NENÍ totéž jako znaková sada)
- Uložte dokument jako UTF-8 (pokud používáte Notepad++, je to Formát -> Převést na UFT-8)
- Záhlaví v PHP i HTML by mělo být nastaveno na UTF-8 (HTML:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
a PHP:header('Content-Type: text/html; charset=utf-8');
- Po připojení k databázi nastavte i zde znakovou sadu ti UTF-8 takto:
$link->set_charset("utf8");
(přímo po připojení) - Také se ujistěte, že vaše databáze a tabulky jsou nastaveny na UTF-8, můžete to udělat takto:
ALTER DATABASE databasename CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE tablename CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Pamatujte, že VŠECHNO musí být nastaveno na znakový kód UFT-8, jinak to vloží věci jako „Øسناً“. Doufám, že to pomohlo!