【问题标题】:Bad encoding from database in php file using IIS 8.5使用 IIS 8.5 从 php 文件中的数据库编码错误
【发布时间】:2013-11-22 11:21:59
【问题描述】:

我必须将大型数据库和大型php系统从php4迁移到php5。

以UTF-8格式存储的数据库表,但数据包含windows-1257;

页眉中的所有页面是:

但我从这样的数据库中获取数据:AutomobiliĆø stovĆ«jimo;

var_dump(mysql_client_encoding($connect));返回 utf8;

文件编码:windows-1257;

在 Apache 服务器中(在 W7 和 Windows 服务器 2012 中尝试 Wamp)获取正常数据。 但是 IIS 不.. Mb IIS 不理解文件编码等..

我放弃了,我需要你的帮助...


SOVLED:我更改了 mysql 配置(my.ini)并将 character_set_server utf8 设置为 latin1 现在 var_dump(mysql_client_encoding($connect));返回拉丁语1; 所有项目都运行良好。

【问题讨论】:

    标签: php iis encoding


    【解决方案1】:

    以 UTF-8 格式存储的数据库表,但数据包含 windows-1257.

    尝试将数据从 Windows-1257 转换为 UTF-8,如下所示:

    $encoded = iconv ( "CP1257", "UTF-8", $string );
    

    【讨论】:

    • 在 wamp 中一切正常,但在 windows 服务器中我收到此错误:PHP 注意:iconv():在 C:\inetpub\wwwroot\archyvas\test.php 中的输入字符串中检测到非法字符
    • 我在表中的数据是“Gatviø Ðilalëje nëra”必须是 Gatvių Šilalėje nėra
    猜你喜欢
    • 1970-01-01
    • 2016-10-09
    • 2018-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-27
    • 1970-01-01
    相关资源
    最近更新 更多