Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Linux上使用php连接到access 97_Php_Linux - Fatal编程技术网

在Linux上使用php连接到access 97

在Linux上使用php连接到access 97,php,linux,Php,Linux,你们这些聪明的人也许可以让我明白这一点,而不用我再浪费时间上网了,所以我来 我们公司仍然使用access 97 mdb文件来处理一些遗留应用程序,我希望能够使用在Linux机器上运行的php/apache连接和查询这些数据库。升级数据库不是一个选项,因此我必须以当前格式使用它们 所以问题是,这可能吗?如果可能的话,我会怎么做?用户代码: $dbName = $_SERVER["DOCUMENT_ROOT"] . "products\\products.mdb"; if (!file_exists

你们这些聪明的人也许可以让我明白这一点,而不用我再浪费时间上网了,所以我来

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

所以问题是,这可能吗?如果可能的话,我会怎么做?

用户代码:

$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扩展。

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

如果您不再需要Access项目,并且只想使用PHP向前移动,则可以转换。或者要回答您最初的问题,您可以连接到Access db。PHP的ODBC驱动程序应该可以做到这一点,但请记住使用Access db的限制。如果这个PHP系统需要支持多个并发用户,那么Access DB的设计就不能解决这个问题;很有可能会导致数据库损坏。谢谢大家。这给了我一个开端。我将mdbtools与unixODBC一起使用。一旦信息出现在odbc.ini和odbcinst.ini文件中,我就可以使用:$conn=odbc_connect('dbname','');我想我可能已经发现了odbc_exec的一个“bug”,但我将把它发布到其他地方。谢谢你的帮助,我会很快将此标记为已回答。