用户
 找回密码
 入住 CI 中国社区
搜索
查看: 4869|回复: 11
收起左侧

[已解决] 乱码

[复制链接]
发表于 2011-6-9 13:20:43 | 显示全部楼层 |阅读模式
http://lcnphp.kilu.org/CI/

html头部明明标记了utf8,而且文件保存方式也是utf8
发表于 2011-6-9 13:32:05 | 显示全部楼层
只要所有文件做到编码一致绝对没问题。
 楼主| 发表于 2011-6-9 13:38:33 | 显示全部楼层
本帖最后由 lcnphp 于 2011-6-9 13:38 编辑
jeongee 发表于 2011-6-9 13:32
只要所有文件做到编码一致绝对没问题。

我本地是没问题的,不知都是不是服务器的问题

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Welcome to CodeIgniter</title>
</head>
<body>

<h1>Welcome to CodeIgniter!</h1>

只是个测试

</body>
</html>
发表于 2011-6-9 13:42:56 | 显示全部楼层
lcnphp 发表于 2011-6-9 13:38
我本地是没问题的,不知都是不是服务器的问题

你的网页一打开显示的字符集是“西欧”的!!!
 楼主| 发表于 2011-6-9 13:45:49 | 显示全部楼层
对啊,它怎么会自动选择西欧呢
发表于 2011-6-9 13:54:47 | 显示全部楼层
我看了一下,确实是服务器的问题,服务器返回了一个这样的 header
Content-Type: text/html; charset=iso-8859-1

这个你用 firebug 一看就知道了,必须返回正确的 charset 或者不返回 charset
这个你用 PHP 应该是可以控制的。
 楼主| 发表于 2011-6-9 14:02:49 | 显示全部楼层
Hex 发表于 2011-6-9 13:54
我看了一下,确实是服务器的问题,服务器返回了一个这样的 header

这个你用 firebug 一看就知道了,必须返 ...

header("Content-type: text/html; charset=utf-8");

我知道用这个就正常了,但是不想为了服务器而专门去加header,而且这个东西必须放在所有输出之前,感觉有点烦,有没有更好的解决方案
 楼主| 发表于 2011-6-9 14:17:42 | 显示全部楼层
受不鸟了,直接写个pre_system钩子
发表于 2011-6-9 16:03:09 | 显示全部楼层
lcnphp 发表于 2011-6-9 14:17
受不鸟了,直接写个pre_system钩子

可以写到钩子里,也可以放到 index.php 里,因为这个文件不用升级。
发表于 2011-6-9 16:08:37 | 显示全部楼层
本帖最后由 008shanke 于 2011-6-9 16:08 编辑

最老套的没有科技含量的办法,试图模板编码没有改为utf-8,修改试试!

本版积分规则