Jump to content
Дизайн и модификация Invision Power Board IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
ovi8

Вставка Emoji

Recommended Posts

Не работают смайлики эмодзи на форуме, при добавлении с телефона и предварительном просмотре все нормально, но при отправке сообщения все пусто и более того, весь текст написанный после них тоже пропадает, может проблема в кодировке? В то же время видел форум на версии 2.х с работающими смайлами <_<

Share this post


Link to post
Share on other sites

Тест ipbskins с телефона

 

Тест ipbskins с телефона

 

Хм, тоже не работает..

Share this post


Link to post
Share on other sites

В стандартной кодировки utf8 один символ может кодироватся максимум из 3-х байтов, символ эмодзи занимает четыре байта. Для них нужно переходить на расширеный utf8mb4.

  • Upvote 2

Share this post


Link to post
Share on other sites

В стандартной кодировки utf8 один символ может кодироватся максимум из 3-х байтов, символ эмодзи занимает четыре байта. Для них нужно переходить на расширеный utf8mb4.

 

Трудно ли на него перейти своими силами? :) И чем это может грозить форуму, глюки и пр. ?

Share this post


Link to post
Share on other sites

перекодировать базу в utf8mb4

 

 

utf8mb4 - набор символов, используемый для хранения 4 байта в MySQL, внедрён в 2010 году начиная с версии 5.5.3. Главное отличие utf8mb4 от utf8 в том, что utf8mb4 задействует более полные возможности кодировки UTF8, позволяя поддерживать все языки и специальные символы, не поддерживающие utf8 (например японский язык или смайлики из ios - emoji).

 

Однако, как можно догадаться, если utf8mb4 использует для хранения 1 символа 4 байта, то база данных может увеличиться в размере, если сравнивать с точно такой же базой данных в utf8. В наше время немного увеличенный размер базы данных не является существенно проблему, по этому, если вы стоите перед выбором использовать utf8 или utf8mb4 набор символов - используйте utf8mb4.

  • Upvote 1

Share this post


Link to post
Share on other sites

Будет грозить проблемами с индексами. Если тип таблиц myisam - максимальный размер индекса в нем составляет 1000 байт, поэтому при переходе на utf8mb4 индексы которые имеют размер в 255 символов нужно заменить на 250 чтобы уместится в 1000 байт. Если тип таблиц innodb, нужно увеличить максимальный размер индекса до 1024, по умолчанию он составляет 767 байт.

 

Prefix support and lengths of prefixes (where supported) are storage engine dependent. For example, a prefix can be up to 767 bytes long for InnoDB tables or 3072 bytes if the innodb_large_prefix option is enabled. For MyISAM tables, the prefix limit is 1000 bytes.

  • Upvote 1

Share this post


Link to post
Share on other sites

Спасибо, @siv1987, да не хочется из-за этого что-то сломать :) В 4 версии я тоже так понимаю Эмодзи не вставишь с телефона? Интересно, почему не переделывают если пишут, что размер БД не сильно увеличится? Кстати, возможно это как то связано с пустыми сообщениями - http://ipbskins.ru/forum/topic14085.html

Share this post


Link to post
Share on other sites

Интересно, почему не переделывают если пишут, что размер БД не сильно увеличится?

Потому что она не является стандартной кодировкой и ее поддержка появилась в mysql 5.5.3. Кто хочет перейти на другие кодировки пусть себе переделывают как хотят.

Share this post


Link to post
Share on other sites

Понял, лучше не стоит менять :D Кстати, я что-то не подумав написал, в 4 версии это и не нужно особо, там доступен редактор.

Share this post


Link to post
Share on other sites

Вот и на американском форуме не рекомендуют менять кодировку.

 

10894577m.png

Share this post


Link to post
Share on other sites

Возможно ли сделать, чтобы не пропадал текст после эмоджи? Интересное наблюдение: при отправке быстрого ответа не отображаются только смайлы эмоджи слова не пропадают, при публикации через расширенный редактор пропадают слова после эмоджи :( В мобильной версии везде (даже в быстром ответе) после эмоджи пропадают слова, думаю это связано с Аяксом.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...