Почему база данных не сохраняет emoji?

Почему при записи эмодзи из редактора в phpMyAdmin в базу данных записываются знаки вопроса?
  • 20 февраля 2024 г. 13:48
Ответы на вопрос 3
Вероятно, проблема связана с тем, что ваша база данных не поддерживает UTF-8 кодировку, которая используется для хранения эмодзи и других специальных символов. Вам нужно убедиться, что ваша база данных настроена на использование UTF-8 или UTF-8mb4, чтобы корректно сохранять символы Unicode, включая эмодзи.

Также возможно, что проблема связана с неправильной конфигурацией вашего phpMyAdmin или самой базы данных. Может потребоваться проверить настройки кодировки в phpMyAdmin и убедиться, что они соответствуют кодировке вашей базы данных.

Если после проверки и исправления настроек проблема остается, вам может потребоваться обратиться к специалистам по базам данных или технической поддержке для дальнейшей диагностики и решения проблемы.
Бд mysql wp должна иметь кодировку utf8mb4 (поддерживает хранение символов юникод втч. эмоджи), а вот utf8 в mysql не поддерживает 4 байтные символы, к которым относятся и эмоджи, из за чего они заменяются на знаки вопроса. 

wp-config.php:
define('DB_CHARSET', 'utf8mb4');
define('DB_COLLATE', 'utf8mb4_unicode_ci');

И изменяем кодировку таблицы бд c utf8 на utf8mb4 .
Тебе нужно установить utf8mb4_genereal_ci не только в таблицах базы, но и в самой БД. 
Для этого можно в PMA выйти на уровень выше твоё БД и там установить сопоставление

Похожие вопросы