【发布时间】:2013-12-09 01:30:44
【问题描述】:
我们希望为客户创建一些 html 报告,以便他们轻松查看其 Omnis 数据库中的数据,这样他们就不必完全登录 Omnis 来获取一些基本信息。我们一直在使用 php 和 odbc,并且在我们的测试环境上一切正常,都在同一台计算机上。
然后我们开始对其进行更多测试,这次是将数据文件放到服务器上,并将 odbc 驱动程序链接到该数据文件。它死于:
Warning: odbc_connect() [function.odbc-connect]: SQL error: Unable to read disk (bad disk), SQL state 08001 in SQLConnect in C:\xampp\htdocs\jP\includes\database.php on line 22
ODBC 链接在 Excel 中运行良好,我们可以根据需要查看和读取所有记录。 服务器上的数据文件是本地计算机上数据文件的直接副本,用户名和密码相同。
php文件中的第22行是
$odbc_conn = odbc_connect($name_odbc, $odbc_user, $odbc_pass)
用户名和密码都正确,我们也试过留空,这对本地数据有效,但对远程数据无效。
服务器位于同一个网络上,我们尝试了两台不同的服务器,结果相同。
任何提示将不胜感激。
【问题讨论】:
-
数据文件上的权限是否足以让运行 PHP 解释器的进程能够访问它?此外,以下是微软对确切 sql 状态的评价:support.microsoft.com/kb/195566
-
@Zarathuztra,你知道我会去哪里改变这个烫发吗?仍然让我感到困惑的是,MS Excel 使用相同的 ODBC 系统 DSM 访问相同的数据文件没有问题
-
Microsoft (Windows) 有自己的权限系统,我不是 100% 熟悉(我是一个严格的 Unix 人),但我相信如果您在安全设置下查看文件属性,您可以找到他们。就以编程方式检查它们而言,我是 SOL。对不起:/
标签: php networking odbc