Кто-нибудь сталкивался с проблемой сохранения отзывов, ответов и комментариев содержащий 4-х байтовые символы, например emoji?
В логах получаю ошибку:
Incorrect string value: '\xF0\x9F\x98\xA5' for column 'text' at row 1
Путем изменений в базе:
ALTER TABLE shop_product_reviews
CHANGE COLUMN `text` `text` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,
CHANGE COLUMN `title` `title` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci,
DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
и настроек mysql:
[mysqld]
character-set-server = utf8mb4
[client]
default-character-set = utf8mb4
Удалось добиться сохранения данных.
Но вывод по-прежнему не работает.
Выводятся вопросительные знаки.
Подскажите, стоит ли дальше копать или код системы не "переваривает" такие символы?
попробуй в wa-config/db.php в данные подключения добавить
если ты mysqli используешь
еще вариант делать
но это как-то не по феншую
Сергей, в яблочко!
Спасибо!