【问题标题】:Unable to read visual foxpro dbf table using PHP (ole db)无法使用 PHP (ole db) 读取可视 foxpro dbf 表
【发布时间】:2015-08-11 09:49:50
【问题描述】:

我正在尝试使用 php 读取视觉 foxpro .dbf 文件并收到以下错误:

Fatal error: Uncaught exception 'com_exception' with message '<b>Source:</b> Microsoft OLE DB Provider for Visual FoxPro<br/><b>Description:</b> Invalid path or file name.' in C:\xampp\htdocs\phpdbf\index.php:41 Stack trace: #0 C:\xampp\htdocs\phpdbf\index.php(41): com->Open('Provider=VFPOLE...') #1 {main} thrown in C:\xampp\htdocs\phpdbf\index.php on line 2

我已经从here 下载并运行了提供程序(注意:不确定我是否需要做任何额外的配置 - 只需运行它)。

这是我的代码: (注意:我不确定代码中的“ADODB.Connection”和“Provider=VFPOLEDB.1”值。如果它们不代表默认值,请告诉我)

$conn = new COM("ADODB.Connection");
$conn->Open('Provider=VFPOLEDB.1;Data Source="C:\\xampp\\htdocs\\phpdbf;";');

//test.dbf is the file
$rs = $conn->Execute("SELECT * FROM test");

// Display all the values in the records set
while (!$rs->EOF) { 
    $fv = $rs->Fields("my_datetime");
    echo $fv->value."<br/>";
    $rs->MoveNext();
} 
$rs->Close(); 

注意:我已经尝试了答案 here ,但仍然得到这个 错误。

【问题讨论】:

  • 您运行的是 32 位还是 64 位版本的 XAMPP?我猜foxpro的东西只能编译为32位,这可能是你的问题吗?
  • 我在 windows 上运行 32 位 xampp
  • 尝试去掉表格所在路径后面的分号...不知道这是否会终止连接。

标签: php oledb dbf visual-foxpro


【解决方案1】:

您的数据源需要指向可视 Foxpro .dbc 文件。示例

Data Source="c:\\vfpdata\\mydatabase.dbc"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-07-31
    • 2012-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-19
    • 1970-01-01
    相关资源
    最近更新 更多