2014-10-27 190 views
0

我在我的网站中使用西班牙语。当iinserted字符像I,A,E,O它将在分贝正确插入,但它不能在前端显示,它在前端像这样显示Smarty特殊字符问题

例如:

Insert name : Test teachér in database it inserted correctly but in front it display as 
Test teach�r. 

我也使用<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> 也没有改变。

+0

您是否将文件(文件)保存为utf-8?你以前不用在PHP中设置另一种编码吗?如果使用数据库,数据库数据是否在utf-8中播放? – panther 2014-10-27 11:09:57

+0

这是一个非常宽泛的问题。你可以从数据库中获取数据而不需要设置正确的编码,你可以使用一些额外的功能来修改输出。你应该首先看看phpmyadmin,如果数据在数据库中是正确的,向我们展示如何从数据库获取数据并将它们分配给smarty并显示smarty代码如何显示它 – 2014-10-27 11:26:44

+0

Marcin你是否得到了我的问题我期待什么?我在数据库中使用了一般归类:utf8_general_ci。 – sudhakar 2014-10-27 11:36:31

回答

0

它与smarty无关。您存储数据,并将其设置为UTF-8通用CI

  • 检查数据库连接的字符集

    1. 检查数据库字符集SET NAMES utf8
    2. 检查脚本的输出,如果它在UTF你可以用元字符集做,或者在标题内容类型中。

    Content-type: text/html; charset="UTF-8"

    <meta charset="utf-8"><meta http-equiv="Content-Type" content="text/html; charset=utf-8">

    这些操作后,你应该有适当的输出。

    您还可以选择检查对字符串起作用的函数是否支持UTF-8。

  • +0

    我用在标题中,并插入我使用mysql_set_charset('utf8'); – sudhakar 2014-10-27 11:45:06