[英]Error in connecting MS-Access database to PHP Server DSN-less
我是PHP的新手,也是Ms-access數據庫的新手。 我正在嘗試將php服務器連接到ms Access數據庫dsnless,因為我必須將此發送給我的朋友。 我的php文件和ms數據庫文件都在同一目錄中,並且它們都將僅保留在localhost上。 我無法理解該錯誤。
我有64位Wamp版本2.4 / Apache版本:2.4.4 / PHP版本:5.4.16 / 64位Windows 7我還從官方站點安裝了Microsoft Access Database Engine 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();
?>
希望能有所幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.