[请益] ckeditor复制unicode组成的贴图会看不见

楼主: liisi (小心一点)   2018-03-02 19:56:50
公司是电商平台
商品描述的编辑器 是用 ckeditor编辑
会将编辑器组成的内容 存入数据库的字段
接着在前台的商品介绍呈现出来
目前遇到一个问题
如果我复制 由unicode组成的贴图 再存入数据库 会出问题
导致前台 无法将呈现资料出来
应该是贴图的unicode 存到字段时 无法转换 导致db存入错误的内容
比如说 我复制 露天的某一段
http://goods.ruten.com.tw/item/show?21307059077449
文字 "新春活动 1" 前面 有三张贴图 都是unicode组成的
想请问一下
是不是需要在config做设定?
或是需要在php加入某参数做转换之类的?
作者: JustGame (JustGame)   2018-03-02 20:53:00
数据库编码?数据库连线编码?
楼主: liisi (小心一点)   2018-03-02 22:30:00
数据库编码是utf8_general_ci希望不要动到数据库编码 太危险了..
作者: hiigara (石头)   2018-03-03 00:34:00
大部分表情符号的utf8是4byte,mysql的utf8是3byte。存的时候会拆成两个3byte(依照rfc2279)。ut8mb4才能处理4byte的utf8。好像不是rfc2279,只是没实作完全而已
作者: wotupset (wotupset)   2018-03-04 20:06:00
unicode有分版本号 太新的表情符号部分数据库会无法对应选有支援的数据库来用就能解决了
作者: LPH66 (-6.2598534e+18f)   2018-03-05 21:50:00
hiigara 提的那种应该是 UTF-16 变种的 UTF-8那种实际上是 UTF-16 表示后再写成 UTF-8, 所以 U+10000以上的字就会变成两个 3 byte总之照 hiigara 建议的改用 utf8mb4 就行了是说我刚刚翻了一下 mysql 的文件, 好像说 3 byte 的是不支援 U+10000 以上的字的, 这应该是原 PO 失败的原因但如果程式本身的 UTF-8 支援就是这种半调子的方式的话那才有可能像上述那样用 UTF-16 变种硬塞进去

Links booklink

Contact Us: admin [ a t ] ucptt.com