Záleží na tom, jaký je vlastně problém...
Pokud je to tak, že tyto znaky jsou předpokládány abyste tam byli (jako například „Mañana“ ve španělštině), musíte se ujistit, že je vše v UTF-8... nejlepší způsob je:
1:zkontrolujte, zda jsou databázové tabulky v kódování "utf-8" (pokud je nepřeveďte na utf-8)
2:Jak poznamenal Martin, ujistěte se, že konektor databáze je utf-8 pomocí něčeho jako:
mysql_set_charset('utf8'); //note that MySQL uses no hyphen here
3:Ujistěte se, že je dokument utf-8 (můžete přidat záhlaví nahoře)
<?php header('Content-type:text/html;charset=utf-8'); ?>
4:pro jistotu to přidejte také jako meta tag
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
VŠAK
Je docela možné, že máte v databázi nějaké duffové znaky, kde bylo něco jako ISO-8859-1 špatně upraveno do UTF-8. V tomto případě si všimnete věcí jako £ kde to, co skutečně chcete, je £ (Vzhledem k tomu, že znaky UTF-8 obsahují více dat než znaky ISO-8859-1, mohou se tato data navíc stát dalším znakem, pokud si nedáte pozor).
V takovém případě je nejlepším řešením vyčistit databázi (pravděpodobně byste mohli udělat něco jako UPDATE table SET field = REPLACE(field, '£', '£')
pro běžné "chyby") a poté převeďte celý kaboodle na UTF-8 (jak je uvedeno výše), aby se problém neopakoval.