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

标签 php html sql utf-8 smarty

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

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

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

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

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

我已经提到了这个:utf-8 special characters not displaying

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

最佳答案

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

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

  • 确保 View 文件保存为 UTF-8。在您的文本编辑器中,您通常可以选择编码。或者选择“另存为...”并在那里选择编码。

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

关于php - 特殊字符未在 TEXTBOX 中正确显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29896526/

相关文章:

php - Python 脚本在传递 $_GET 参数时调用 PHP 脚本

java - 从 .JSP 上的列表中提取值

html - Django 将 HTML 对象作为纯文本传递到模板中

sql - Postgres : Timestamp bigger than now

sql - 如果联接表缺少该日期的记录,则在 SQL 中返回 NULL

php - 如何显示数据库中存储的图像?

javascript - jQuery .submit() .ajax() 必须单击发送按钮两次才能获得正确的响应

php - SQL 注入(inject)同时允许 iFrame

html - 将选择选项值传递给 OnChange 函数

php - 从多条件请求中选择行