2012-10-27 130 views
0

我目前的工作得到一個PHP腳本連接到MS Access數據庫2007年,使PHP腳本可以從它retrrive信息。PHP連接數據庫(.mdb)

有誰知道完成此任務的任何方式我相信創建一個ODBC連接可能是前進的方向,但我希望對此問題的任何指導。

非常感謝所有幫助任何人願意給我

詹姆斯

+0

可能是有趣的:http://stackoverflow.com/questions/11338264/retriving-data-from-database-based-on-user-input – Fionnuala

+0

是的,PDO與ODBC是要走的路。或者,你可以啓動ADO ...我不推薦它。 – Brad

+0

感謝球員,它的問題是PHP腳本在(.mdb)數據庫的外部服務器上嗎? – user1714133

回答

1

通常情況下,你會做這樣的事情:

$dbName = $_SERVER["DOCUMENT_ROOT"] . "products\products.mdb"; 
if (!file_exists($dbName)) { 
    die("Could not find database file."); 
} 
$db = new PDO("odbc:DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=$dbName; Uid=; Pwd=;"); 

連接成功將使SQL命令是從PHP執行讀取或寫入數據庫。但是,如果您收到錯誤消息「PDOException找不到驅動程序」,則可能是未安裝PDO ODBC驅動程序。使用phpinfo()函數檢查您的安裝是否參考PDO。

如果PDO ODBC條目不存在,則需要確保您的安裝包含PDO擴展名和ODBC驅動程序。要在Windows上做到這一點,取消對該行extension=php_pdo_odbc.dllphp.ini,重新啓動Apache,然後嘗試重新連接到數據庫。

在你的情況下,我相信如果.mdb文件位於外部服務器上,它就會起作用,但你必須能夠從服務該頁面的位置點擊該文件。

不知道這是Intranet還是通過公共互聯網,但如果是公共互聯網,您可能想重新修改您的工作流程,因爲通常以這種方式訪問​​您的數據庫不是您想要的。