特殊字符未在TEXTBOX中正确显示

时间:2015-04-27 12:59:10

标签: php html sql utf-8 smarty

我正在使用PHP + HTML + smarty(作为模板)。

有一些动态内容来自用户的输入。

当用户输入一些特殊字符,例如—.‘@•时,它已在变量中正确保存。

但是当我尝试在textbox(使用智能模板)中显示相同的特殊内容时,它会显示如下内容:�.�@�

<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> is already included in the Header`。

我已经提到过:utf-8 special characters not displaying

它的解决方案都不适合我。

1 个答案:

答案 0 :(得分:0)

确保处理字符串的所有内容都支持UTF-8。主要是:

  • 如果在显示之前将字符串存储在表中,请检查它是否为UTF-8编码(例如,对于MySQL,在创建表时为DEFAULT CHARSET=utf8。)

    < / LI>
  • 确保视图文件保存为UTF-8。在文本编辑器中,您通常可以选择编码。或者选择&#34;另存为...&#34;并选择那里的编码。

  • 我不熟悉Smarty,但要确保它没有将字符串转换为某些非UTF8编码。