【问题标题】:HTML character encoding?HTML字符编码?
【发布时间】:2014-09-14 16:13:16
【问题描述】:

所以这对我来说一直是个问题。这是一个我不理解的领域,真的让我很生气。

我需要将符号保存到一个系统上的数据库中,然后检索它们并在另一个系统上显示它们。

例如,在管理系统上,我的表单允许用户输入英镑£ 符号,但是当我在一个网站上输出它时,它显示为 �,而在另一个网站上它正确显示 £

我用谷歌搜索过stackoverflow,这就是我所做的:

  1. 将数据库表设置为utf8_general_ci
  2. 将该字段设置为 utf8_general_ci
  3. 在 codeigniter 中,将字符集设置为 UTF-8
  4. 在保存到数据库的网页上,我有以下内容:<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 导致奇怪的字符
  5. 数据库中的井号成功为井号。
  6. 一个网站的英镑符号显示成功,头部带有<meta http-equiv="Content-Type" content="text/html; charset=utf-8">标签
  7. 在另一个网站上,标签与第 6 点相同,它仍然显示奇怪的字符。
  8. 我已将此标头添加到 PHP:header("Content-Type: text/html; charset=utf-8");,它与 codeigniter 等效。
  9. 在显示奇怪字符而不是 £ 符号的网页中,响应为:Content-Type:text/html; charset=utf-8

我不知道还能做什么。我用谷歌搜索,并在stackoverflow上搜索。所有帖子都说要使用

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

标签,我在每个网站上都做过,但没有一个有效。

我也加入了

<meta charset="utf-8">

标签不起作用。

请帮忙,我正在努力理解为什么它不起作用,并且没有任何建议起作用。如果您需要任何进一步的信息,请告诉我。

我看过的一些资源:

【问题讨论】:

    标签: html codeigniter utf-8 character-encoding


    【解决方案1】:

    您没有解释您正在使用哪些系统。您是否尝试从表中的字段中获取这些数据,然后以 HTML 格式输出?

    在 HTML 中,£ 符号是 &amp;#x000A3;

    如果在存储为 £ 的数据库字段中,您可以使用

    $symbol = str_ireplace("£", "&#x000A3;", $symbol);
    

    在 HTML 中,我使用以下声明:

    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    

    在此声明中,&amp;pound;£ 也将显示 £ 符号。

    【讨论】:

    • 系统是不同的网站。一种是内部内网系统,它没有正确显示£符号,但正确地将其保存到数据库中。另一个系统是面向公众的网站,它按预期显示£符号,第三个系统是开发面向公众的网站,它再次没有正确显示符号。我不想使用str_ireplacehtmlentities 函数,这似乎是对肯定有适当解决方案的问题的一个hacky 修复。不过还是谢谢你的回复。
    【解决方案2】:

    嘿,我遇到了同样的问题,ñ 字符显示为 � 所以我尝试在选择数据库之前输入此代码

    mysql_query("SET NAMES 'utf8'");
    mysql_query("SET CHARACTER SET 'utf8'");
    

    将该代码放在您的选择语句上方。

    我还没有在 codeigniter 中尝试过,所以也许可以尝试使用这个代码

    $this->db->query("SET NAMES 'utf8'");
    $this->db->query("SET CHARACTER SET 'utf8'");
    //then your query code.
    

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-07
      • 2013-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多