Trước khi truy vấn, hãy thử:
mysql_query("SET NAMES 'utf8'", $conn);
* chỉnh sửa *
Tùy thuộc vào phiên bản MySQL, bạn cũng có thể được yêu cầu sử dụng:
mysql_query("SET CHARACTER SET utf8", $conn);
Một lưu ý cuối cùng, cơ sở dữ liệu cần sử dụng bộ ký tự UTF-8, để đảm bảo điều này:
ALTER <database_name> DEFAULT CHARACTER SET utf8;
* Các chỉnh sửa khác *
Sau khi đọc các chỉnh sửa của bạn, tôi nghĩ rằng đây là vấn đề với mã hóa HTML / PHP của bạn. Trên trang gửi các ký tự, hãy đảm bảo rằng bạn đặt tiêu đề đúng cách:
header('Content-Type: text/html; charset=UTF-8');
Bạn cũng nên đặt điều này thông qua thẻ meta:
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
Sau đó, đặt mã hóa multibyte bằng mb_internal_encoding()
chức năng:
mb_internal_encoding("UTF-8");
Theo mặc định, PHP sử dụng ISO-8859-1.