【发布时间】:2011-08-28 18:28:22
【问题描述】:
我得到了这张表,其列名 Catégorie 我无法重命名(长话短说),而 é 让我很困扰。
我似乎无法查询该列。
我得到以下代码
$query_brands = "SELECT distinct catégorie as merk FROM GSProduct";
$resultBrands = $phpbb->query($query_brands);
$brandArr = array();
foreach($resultBrands as $brand){
$brandArr[$brand->merk] = $brand->merk;
}
在 mysql 中查询工作正常,但在 php 中出现异常:
PDOException:在 meisjesschoenen_filter_form() 中(/home/mediaspe/domains/mediaspex.be/public_html/juniorsteps/sites/all/modules/meisjesschoenen/meisjesschoenen.module 的第 198 行)
我尝试将它放在 ' ' 之间,但我只得到 1 个空结果,而不是我应该得到的 7 个结果
非常感谢您的帮助!
更新:
我在 settings.php 中找到了以下代码行,然后添加了排序规则广告:
array (
'juniorsteps_gem' =>
array (
'database' => '*****',
'username' => '*****',
'password' => '*****?',
'host' => 'localhost',
'port' => '',
'driver' => 'mysql',
'prefix' => '',
'collation' => 'utf8_general_ci',
),
我还在 mysql 中发现我的数据库/表的排序规则也是 utf8_general_ci 所以应该没问题。
UPDATE2(无法自行回答)
问题出在我的文件上。 我使用 notepad++ 将我的文件从 ANSI 转换为 UTF 8,现在它可以工作了。
感谢大家朝着正确的方向前进!!
【问题讨论】:
-
数据库连接 (PDO) 的编码是什么,您将写入该 SQL 语句的文件保存在哪种编码中?
-
我使用了一个drupal类来连接数据库,我正在尝试找出文档中的编码,但还没有运气。此行建立连接: $phpbb = Database::getConnection($target='juniorsteps_gem',$key='juniorsteps_gem');如何找到文件的编码类型?它只是一个 .php 文件,我用 notepad++ 编辑它
-
我尝试使用:$phpbb = Database::getConnection($target='juniorsteps_gem',$key='juniorsteps_gem'); mysql_set_charset('utf8', $phpbb);但它没有用。
-
很高兴你找到了罪魁祸首。我已添加文件编码作为答案,请随时接受;)
标签: php mysql encoding pdo drupal-7