表单中的字符编码

时间:2016-10-13 14:43:42

标签: html linux encoding utf-8

我在MySql数据库上有一个php / html应用程序。数据库编码为UTF-8,HTML文件(this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />)也是如此。

问题是,存在不一致,如列表页面(普通html,没有表格),我可以正确地看到UTF-8字符(enter image description here),当我在mysql admin中选择值时,但在编辑表单中,我在输入文本字段中看到错误的字符(enter image description here)。 当我更新mysql admin 中的值时会发生这种情况。

反过来发生,如果我通过表单更新值我在输入文本字段中正确看到字符,但列表中错误(html,没有表单)(enter image description here)。

我读到的问题可能是文件编码,这很令人困惑,因为,如果我列出<meta charset="utf-8">(我使用linux),我看到混合了utf-8和us-ascii文件,但是如果我使用崇高文本3打开,我可以在所有这些上看到UTF-8,即使我file -isave with encoding utf-8也不会改变结果。

我还读到file -i更像一个猜测而不是一个真实的结果,所以我很困惑哪个编码文件有,我怎么能真正改变它们。涉及的文件很多,模板,库等等。

修改 为了连接到数据库,我使用Doctrine(我忽略内部机制)和file -i,我强制使用@mysql_connect

并非真正重复UTF-8 all the way through,但@deceze是对的,我需要按照SO response中的说明配置Doctrine连接:

$this->charset_utf8 = true

谢谢

0 个答案:

没有答案