2013-03-21 52 views
1
连接到接入97

你聪明的人也许可以让我直在这个没有我浪费更多的时间拖网互联网所以这里去....在Linux上使用PHP

公司仍然使用访问97 MDB文件一些遗留应用程序,我希望能够使用运行在Linux机器上的php/apache来连接和查询这些数据库。升级数据库不是一种选择,所以我必须以当前格式使用它们。

所以问题是,这是甚至可能的,如果是这样,我将如何去呢?

+0

如果您不再需要Access项目,并且只想使用PHP向前移动,则可以将[Access db to MySQL](http://www.bullzip.com/products/a2m/info.php)转换。或者回答你原来的问题,你可以[使用ODBC与PHP](http://phpmaster.com/using-an-access-database-with-php/)连接到你的Access数据库。 – 2013-03-21 10:59:05

+0

PHP的ODBC驱动程序应该这样做,但要记住使用Access DB的限制。如果这个PHP系统需要支持多个并发用户,则Access DB的设计目的不是为了应付这种情况;因此很可能会导致数据库损坏。 – SDC 2013-03-21 11:23:01

回答

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=;"); 

您应该启用在php.ini文件PDO & ODBC extenstions。

+0

感谢人。它给了我一个首发。我用unixODBC使用mdbtools。一旦信息在odbc.ini和odbcinst.ini文件中,我就可以使用以下链接连接到mdb文件: $ conn = odbc_connect('dbname','',''); 我想我可能已经发现了odbc_exec的一个'bug',但是我会在其他地方发布这个。感谢您的帮助,我会将其标记为即将回答。 – 2013-03-27 08:53:38

0

谢谢大家。它给了我一个首发。我用unixODBC使用mdbtools。一旦信息在odbc.ini和odbcinst.ini文件中,我就可以使用以下链接连接到mdb文件:$ conn = odbc_connect('dbname','','');我想我可能已经发现了一个odbc_exec的“bug”,但我会在其他地方发布这个。感谢您的帮助,我会将其标记为即将回答。