Проблемы с кодировкой в БД [дубликат]

187
07 сентября 2017, 19:23

На данный вопрос уже ответили:

  • MySQL обрезает текст на сложном символе-картинке 3 ответа

Делаю небольшой проект, который использует сообщения из базы данных. Сами сценарии (на php) и страницы вывода информации из базы данных в кодировке utf-8. База данных также создана в кодировке utf-8.

Если прописываю в коде при добавлении и при выводе следующее:

 mysql_query("SET NAMES 'utf8'"); 
 mysql_query("SET CHARACTER SET 'utf8'");
 mysql_query("SET SESSION collation_connection = 'utf8_general_ci'");

то в базу записывается и отображается всё верно (кириллица отображается верно), кроме... некоторых смайликов (которые критичны для "заказчика", как оказалось). Подскажите, как быть?

Answer 1

кроме некоторых смайликов

Это проблема ограниченности кодировки utf8 в mysql. Чтобы ее обойти надо использовать кодировку utfmb4. Для этого ее надо задать для таблицы и для соединения.

Соответственно, таблицы создавать с кодировкой utfmb4 вместо "utf-8" (которая на самом деле utf8), а после соединения писать одну строчку

mysql_set_charset('utfmb4');

И да, функций mysql_* больше не существует. Так что в своем небольшом проекте ты должен использовать PDO.

READ ALSO
работа с картинкой php

работа с картинкой php

Здравствуйте, Есть база данных строящихся зданийЕжемесячно надо менять в них фото(одно) на текущее время и данные о расходах для отчета

203
php новостная лента

php новостная лента

Мне нужно сделать ленту новостей есть примерно вот такая конструкция но она не моя

147
в каких случаях в массивах на php в конце ставится запятая а в каких нет? или она ставится всегда?

в каких случаях в массивах на php в конце ставится запятая а в каких нет? или она ставится всегда?

в каких случаях в массивах на php в конце ставится запятая а в каких нет? или она ставится всегда??

260
не работает curl_exec()

не работает curl_exec()

var_dump показывает false , при попытке записать это на файл file_put_contents('1',$content ) создает пустой файл, не понимаю почему не работает, curl подключен ошибок...

166