【问题标题】:CodeIgniter PHP echo data from Mssql query result with wrong characters来自 Mssql 查询结果的 CodeIgniter PHP 回显数据错误字符
【发布时间】:2014-08-19 11:36:28
【问题描述】:

我正在使用 CodeIniter,有一个数据库配置文件,我在其中为我的主 mysql 数据库设置参数 - 它工作正常。我还有一个数据库(Mssql),我可以连接到它,获取数据。问题是当我想创建“选择”输入并添加具有“ID”值和“名称”列的选项名称的数据时。简单的名称值是好的,但某些特定语言字符存在问题 - 它们的输出是�。我在整个页面中将编码更改为 UTF8,使用 Mssql 结果字符串中的 utf8_encode 函数,但仍然存在问题,因为字符不正确(在 utf8_encode 字符更改后,但不正确)。

【问题讨论】:

  • 表和行的编码是什么?
  • UTF8 - 在测试页显示数据时没有问题。当我想将字符添加到 Select 时,出现字符问题。
  • 那么可能是MySQL和PHP之间的socket上使用的编码,试试mysqli::set_charset fr2.php.net/manual/en/mysqli.set-charset.php
  • 检查数据库中的字符集
  • 字符集设置正确。

标签: php sql-server database codeigniter special-characters


【解决方案1】:

我也遇到了这个错误,但我通过在查询之前添加此代码解决了这个问题。

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

【讨论】:

  • 是的,我知道这样可以解决 MYSQL 问题,但我使用的是 MSSQL 数据库,它是不同的。
  • ini_set('mssql.charset', 'UTF-8');你试过了吗?
  • 是的,并列,但它什么也没做(到处都试过:主页、功能等等)。
猜你喜欢
  • 1970-01-01
  • 2012-02-07
  • 1970-01-01
  • 2015-12-27
  • 1970-01-01
  • 1970-01-01
  • 2018-03-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多