在管理员方面,他输入英文文本,同样将转换为法文(使用谷歌API) 例如在管理员方面,如果我输入文本'类别',同样转换为'catégorie'(在IE --->cat rie) 并以
的形式保存到数据库中nameEnglish---> category
nameFrench --->catégorie
因为这个过程很好,但我的问题出在用户端,如果用户选择法语,则内容必须以法语显示。但它显示为'catégorie',而不是我存储在DB'catégorie'中。我不知道该怎么办。我应该安装任何语言包吗?还是db问题?
http://gates.cc/works/jp-evolution/blog-detail.php?lang=2&bId=7
答案 0 :(得分:0)
尝试将特殊字符(如é和ü)存储为HTML实体。
检查PHP函数htmlentities,以便将特殊字符转换为HTML实体。
当你转换时,f.e。 “école”将存储为:école
,HTML将正确呈现特殊字符。
编辑:根据我之前的经验,即使我的排序规则设置为UTF-8,我也遇到了同样的问题,不得不使用HTML实体进行转换。因此,我从一开始就将它们存储为HTML实体。
答案 1 :(得分:0)
HTML标头应声明页面编码为UTF-8。
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="UTF-8" />
XHTML的第一个,HTML 5的第二个。
此外,您和DB应该使用UTF-8编码(如果您使用的是MySQL,请尝试使用SET NAMES'utf8')。
这应该可以毫无问题地解决问题。
答案 2 :(得分:0)
要启用UTF-8,需要执行几个步骤。 这是一个非常好的写作。 http://developer.loftdigital.com/blog/php-utf-8-cheatsheet
答案 3 :(得分:0)
您还可以使用php函数将数据库返回的字符串转换为html实体:htmlentities。通过执行此代码,$ string var应该是可显示的。
$string = htmlentities($string,ENT_IGNORE,'ISO8859-1');