将MS Access数据库连接到PHP服务器DSN-less时出错


Error in connecting MS-Access database to PHP Server DSN-less

我是PHP的新手,也是Ms访问数据库的新手。我正试图将php服务器连接到ms-access数据库dsnless,因为我必须将其交给我的朋友。我的php文件和ms数据库文件都在同一个目录中,它们都将只停留在localhost上。我不能理解这个错误。

我有64位wamp版本2.4/Apache版本:2.4.4/PHP版本:5.4.16/64位windows 7此外,我已经从官方网站安装了Microsoft Access数据库引擎2010 Redistributable。

这是我的php代码

<?php
echo (8 * PHP_INT_SIZE) . "-bit<br/>";
$user = "";
$password = "";
$mdbFilename= "C:'wamp'www'test'testdb.accdb";
$conn=$connection = odbc_connect("Driver={Microsoft Access Driver (*.mdb, *.accdb)};Dbq=$mdbFilename", $user, $password);              ////<----line 10
if (!$conn) {
  exit("Connection Failed: " . $conn);
}
$sql="SELECT * FROM testdb";
$rs=odbc_exec($conn,$sql);
if (!$rs) {
  exit("Error in SQL");
}
while (odbc_fetch_row($rs))
{
    $json_output[] = odbc_result($rs, "test");
    print(json_encode($json_output));
}
odbc_close($conn);
?>  

这是我的错误

Warning: odbc_connect(): SQL error: [Microsoft][ODBC Microsoft Access Driver] Not a valid file name., SQL state S1000 in SQLConnect in C:'wamp'www'test'working.php on line 10

这是我用来连接Ms-Access:的

<?php
    $conn = new COM("ADODB.Connection");
    $dns = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=".realpath("./youraccessdb.mdb").";";
    $conn->open($dns);
    $rs = $conn->execute("SELECT * FROM table");
    $field =  $rs->Fields(0);
    while (!$rs->EOF) {
      print $f1->value . "'n";
      $rs->MoveNext();
    }
    $rs->Close();
    $conn->Close();
?>

希望得到帮助。