PHP PDO ODBC到.mdb给出?????阿拉伯字符

时间:2017-11-04 15:36:00

标签: php ms-access pdo odbc arabic

我的页面中有代码:

<div class="wrap">
      <?php
        $args = array( 
          'post_type' => 'partnerships',
          'orderby' => 'title',
          'order' => 'ASC'
        );
        $the_query = new WP_Query( $args );

      ?>

      <?php if ( have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post(); ?>

        <a class="one-third partnership-block" href="<?php the_permalink(); ?>">

            <img src="<?php the_field('logo'); ?>" alt="<?php the_title();?> graphic">

        </a>

      <?php $products_count = $the_query->current_post + 1; ?>
      <?php if ( $products_count % 4 == 0): ?>

      </div><div class="row">

      <?php endif; ?>


      <?php endwhile; wp_reset_postdata(); endif; ?>
</div>

当我执行正常的SELECT查询时,我得到????阿拉伯字符。 我经历了很多问题和帖子,但我很少找到我的案例,但没有一个帮助。我试过COM,但是我得到了一些错误,说班级不存在,我在php.ini中找不到它

我需要从.mdb表中获取数据到MySQL数据库......

编辑:我能够解决我的问题//////////////////////// 这是我使用的代码:

<meta http-equiv="Content-Language" content="ar-lb">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<?php
$db = new PDO("odbc:DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=".realpath($dbName).";charset=utf-8");
?>

起初COM根本没有帮助,但是诀窍是将这两个参数添加到COM构造函数中......

1 个答案:

答案 0 :(得分:0)

在MySQL ODBC驱动程序配置中指定字符集:

![Windows Key] [oldwinlogo] →输入 ODBC 输入

MySQL ODBC Driver Config

如果这还没有解决问题,那么它可能与MySQL数据库中的数据类型有关。例如,BLOB显然不适用于阿拉伯字符。有关此bug report的更多信息。