Проблемите с набора от знаци често са наистина трудни за установяване. По принцип трябва да се уверите, че всичко от следните са верни:
- БД връзката използва UTF-8
- БД таблиците използват UTF-8
- Отделните колони в таблиците на DB използват UTF-8
- Данните всъщност се съхраняват правилно в UTF-8 кодирането в базата данни (често не е така, ако сте импортирали от лоши източници или сте променили съпоставянията на таблици или колони)
- Уеб страницата заявява UTF-8
- Apache обслужва UTF-8
Ето един добър урок за справяне с този списък от началото до края:http:/ /www.bluebox.net/news/2009/07/mysql_encoding/
Изглежда, че проблемът ви е конкретно, че имате двойно кодирани (или тройно кодирани) знаци, вероятно от промяна на набори от знаци или импортиране на вече кодирани данни с грешен набор от знаци. Има цял раздел за коригиране на това в горния урок.