Prawdopodobną odpowiedzią jest to, że połączenie MySQL nie określiło utf8mb4
. (W szczególności utf8
MySQL'a) nie wystarczy dla Emoji.) Czy możesz podać kod połączenia? Oto rozwiązanie awaryjne:Wykonaj to po połączeniu z MySQL:
SET NAMES utf8mb4
Inną możliwą odpowiedzią jest to, że serwer WWW nie traktuje strony jako UTF-8
. Jednym ze sposobów rozwiązania tego jest to w <head>
:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
A kolumna musi mieć postać CHARACTER SET utf8mb4
, a nie ut8
.
Zestawianie połączeń node.js
var connection = mysql.createConnection({ ... , charset : 'utf8mb4'});
Zobacz przepełnienie stosu