【问题标题】:Fetching strings with special alphabet from MySQL database从 MySQL 数据库中获取带有特殊字母的字符串
【发布时间】:2018-04-07 19:00:10
【问题描述】:

我有一个 php 变量,它的值是从 HTML 表单中设置的。 变量的值为

$x = rueFrédéricMistral

如您所见,它有一个特殊的字母表 (e_tilda)。

现在当我回显 x 时,它给了我以下信息:rueFr�d�ricMistral

我不确定如何回显原始名称。 我尝试了函数htmlspecialchars(),但它不起作用。 在阅读时,我了解到该功能不适合我的情况。

谁能帮帮我。

提前致谢。 尼拉杰

【问题讨论】:

标签: php mysql html


【解决方案1】:

至少有 3 个可能的原因:

  1. (很可能)您的 html 页面中的字符集定义不正确,请确保您的页面的 <head> 部分中有 <meta charset="utf8"/> 之类的内容
  2. 您可能为数据库连接定义了错误的字符集。有关用于连接数据库的函数/库,请参阅文档
  3. (不太可能)数据库内的内容可能会自行损坏,例如由于使用无效字符集进行迁移/插入。

【讨论】:

    【解决方案2】:

    你也可以试试这个

    echo htmlentities($x);
    

    你也可以用这个

    服务器端

    <?php
        header('Content-Type: text/html; charset=ISO-8859-1');
    ?>
    

    客户端

        <head>
            <meta charset="utf-8">
        </head>
        <body>
            <?php
                $x = "rueFrédéricMistral";
                echo $x;
            ?>
        </body>
    

    【讨论】:

    • 我试过了,但它不起作用。但是,当我尝试在 javascript 中使用 $x 时,问题就出现了。我在 javascript 中编写了以下代码: var abcd = ; alert(abcd).... 但我在警报消息中得到 null
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-02-03
    • 1970-01-01
    • 1970-01-01
    • 2013-06-29
    • 2013-03-31
    • 2016-10-01
    • 2010-10-29
    相关资源
    最近更新 更多