Преди заявката опитайте:
mysql_query("SET NAMES 'utf8'", $conn);
*редакции *
Очевидно в зависимост от версията на MySQL може да се наложи да използвате:
mysql_query("SET CHARACTER SET utf8", $conn);
Една последна забележка, базата данни трябва да използва набора от символи UTF-8, за да гарантира това:
ALTER <database_name> DEFAULT CHARACTER SET utf8;
*Още редакции *
След като прочетох вашите редакции, мисля, че това е проблем с вашето HTML/PHP кодиране. На страницата, която изпраща знаците, се уверете, че сте задали правилно заглавките:
header('Content-Type: text/html; charset=UTF-8');
Трябва също да зададете това чрез мета тагове:
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
След това задайте многобайтовото кодиране с mb_internal_encoding()
функция:
mb_internal_encoding("UTF-8");
По подразбиране PHP използва ISO-8859-1.