使用é进行查询;作为php drupal 7中的列名
我得到的这个表有一个列名使用é进行查询;作为php drupal 7中的列名,php,mysql,encoding,pdo,drupal-7,Php,Mysql,Encoding,Pdo,Drupal 7,我得到的这个表有一个列名Catégorie,我无法重命名它(说来话长),这一直困扰着我 我似乎无法质疑那个专栏 我得到了以下代码 $query_brands = "SELECT distinct catégorie as merk FROM GSProduct"; $resultBrands = $phpbb->query($query_brands); $brandArr = array(); foreach($resultBrands as $brand){
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()中(第198行/home/mediaspe/domains/mediaspex.be/public_html/juniorsteps/sites/all/modules/meisjesschoenen/meisjesschoenen.module)
我试着把它放在'
之间,但是我只得到了一个空结果,而不是我应该得到的7个结果
非常感谢你的帮助
更新:
我在settings.php中找到了以下代码行,并添加了以下排序规则:
array (
'juniorsteps_gem' =>
array (
'database' => '*****',
'username' => '*****',
'password' => '*****?',
'host' => 'localhost',
'port' => '',
'driver' => 'mysql',
'prefix' => '',
'collation' => 'utf8_general_ci',
),
另外,我在mysql中发现,我的数据库/表的排序规则也是utf8\u general\u ci,所以应该可以
UPDATE2(尚无法自行回答)
问题是我的文件。
我用notepad++将我的文件从ANSI转换成UTF8,现在它可以工作了
Thx所有的推在正确的方向 您应该使用“quote而不是” 尝试使用:
"SELECT distinct `catégorie` as merk FROM GSProduct";
确保正在编写SQL语句的文件编码正确,例如UTF-8。这是您正在使用的编辑器中的设置
否则,您将向数据库发送错误的字符,因为您会得到一个无效的PDO异常。它仍然会给出相同的PDO异常:s@Stephan-Celis您是否发送“设置名称UTF8;”创建连接后?我尝试使用以下行“$phpbb->query('SET NAMES UTF8');$resultBrands=$phpbb->query($query_brands);”但它不起作用数据库连接的编码(PDO)是什么,您在哪个编码中保存编写SQL语句的文件?我使用drupal类连接到数据库,我正在试图找出文档中的编码,还没有找到。此行创建连接:$phpbb=Database::getConnection($target='juniorsteps_gem',$key='juniorsteps_gem');如何找到文件的编码类型?它只是一个.php文件,我用记事本++编辑它,我试着使用:$phpbb=Database::getConnection($target='juniorsteps_gem',$key='juniorsteps_gem');mysql\u set\u字符集('utf8',$phpbb);但是没用。很高兴看到你找到了罪犯。我已经添加了文件编码作为答案,请随意接受;)