에 대한 내 페이지의 코드가 있습니다PHP PDO ODBC for .mdb가 ?????를 제공합니다. 아랍어 문자
<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");
?>
을 때 내가 얻을 정상적인 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_path = "example.mdb";
$db_path = realpath($db_path);
$db_dir = dirname($db_path);
$constr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=".$db_path.";DefaultDir=".$db_dir.";";
$link = new COM("ADODB.Connection", NULL, CP_UTF8);
$link->Open($constr);
?>
: 나는 내 문제 //////////////////////// 를 해결할 수 있었다 이것은 내가 사용하는 코드입니다
처음에는 COM이 전혀 도움이되지 않았지만 그 트릭은 COM 생성자에이 두 인수를 추가하는 것이 었습니다 ...
파일을 만든 Access의 버전에 따라 UTF-8로 인코딩 될 수도 있고 그렇지 않을 수도 있습니다. 그렇지 않은 경우 UTF-8로 인코딩 될 수도 그렇지 않을 수도 있습니다. [이 페이지] (http://vietunicode.sourceforge.net/howto/convertaccessdb.html)를 검토하여 테이블의 인코딩을 변경하십시오. UTF-8이 아니라면 파일이 생성 된 시스템의 인코딩이며이를 사용할 수있는 반면 더 나은 옵션은 UTF-8로 변환하는 것입니다 (또는 테이블 자체를 이동하기 위해 Access 자체를 사용하면됩니다. ashleedawg 제안에 따라 MySQL 드라이버 구성하기) –