У меня проблема с неправильной передачей смайликов на мой промежуточный сайт.Некоторые смайлики заменяются знаком вопроса, некоторые нет.Это в основном влияет на сообщения в блоге.Я не уверен, что является причиной этого, и надеялся, что кто-то может указать мне правильное направление для решения этой проблемы!Может ли это быть что-то с кодировкой символов в базе данных?
Например: Эти работы: ☀️ ☔️❤️✨ Они заменяются знаком вопроса: ???????? и показывают эту ошибку:
1366 Incorrect string value: '\xF0\x9F\x98\x83\xF0\x9F...' for column 'text' at row 1
МОЙ код SQL:
CREATE TABLE `posts` (
`id` int(11) UNSIGNED NOT NULL,
`user_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '0',
`text` longtext COLLATE utf8mb4_unicode_ci NOT NULL,
`status` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '0',
`timestamp` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
Запустили и попробовали этот код SQL:
ALTER TABLE posts CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin
ALTER DATABASE test CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;