Przed zapytaniem spróbuj:
mysql_query("SET NAMES 'utf8'", $conn);
*edycje *
Najwyraźniej w zależności od wersji MySQL może być konieczne użycie:
mysql_query("SET CHARACTER SET utf8", $conn);
I ostatnia uwaga, baza danych musi używać zestawu znaków UTF-8, aby zapewnić, że:
ALTER <database_name> DEFAULT CHARACTER SET utf8;
*Więcej zmian *
Po przeczytaniu twoich zmian myślę, że jest to problem z kodowaniem HTML/PHP. Na stronie przesyłającej znaki upewnij się, że poprawnie ustawiłeś nagłówki:
header('Content-Type: text/html; charset=UTF-8');
Powinieneś to również ustawić za pomocą metatagów:
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
Następnie ustaw kodowanie wielobajtowe za pomocą mb_internal_encoding()
funkcja:
mb_internal_encoding("UTF-8");
Domyślnie PHP używa ISO-8859-1.