我应该用斯洛伐克语的内容为客户创建网站(这意味着它包含特殊字符
像č,č,ó,ď,ť等。我正在使用数据编码为utf8_general_ci
的MySQL数据库。这些数据由PHP提取
生成HTML代码并使用从数据库收到的文本数据填充它。我用过:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
在生成的HTML的头部,
使用here,
提到的步骤修改了php.ini 在PHP脚本本身中称为header('Content-Type: text/html; charset=utf-8')
。结果是所有特殊字符都是
显示为问号。
是否有任何有限的步骤列表可以保证所有内容都能正常显示?
编辑:
由于我已经找到了解决方案,我想分享帮助我处理UTF-8网站的步骤,如果有人也在努力的话。
1。)使用this文章中最佳答案中提到的步骤更改php.ini。
2。)在负责任的php脚本开始时调用header('Content-Type: text/html; charset=utf-8');
。
3.。)在执行任何查询之前,请致电mysqli_query($con,"SET NAMES utf8");
(我在设置$con
连接后立即在脚本顶部调用一次)。
4.。)将<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
放在HTML代码的头部。
5.。)将数据库的排序规则更改为任何utf8类型(我提到utf8_general_ci
)。
希望它有所帮助。
答案 0 :(得分:0)
我找到了类似的帖子here
text/html; charset=utf-8
,确保编码为UTF-8。直接在表格输入中输入俄语文本。SET NAMES utf8
,以便在插入数据之前将其存储为UTF-8 事先单独查询。Content-Type
为text/html; charset=utf-8
。确保内容类型不 windows-1251或iso-8859-1 / latin1。确保数据库字符集/ coallition不是ISO-8859-1 / Latin1。
答案 1 :(得分:0)
确保您的数据已正确编码为UTF8 - 使用支持UTF8的终端/应用程序进行查询,并确认您可以正确查看重音字符。如果没有,您需要检查输入表单以正确设置数据编码。使用<form accept-charset="utf-8">
但不要依赖它 - 如果需要,请在后端进行检查和转换。
还要确保所有文件也编码为UTF8:php文件,模板,javascript,html小部件。