在本地电脑安装ODBC驱动,PHP 链接DBF文件。。如果文件是放在本地磁盘上,只要输入c:\BatMan\Daten\histwech.dbf即可使用,
但是如果要链接局域网里面其他电脑上的DBF文件,应该如何定义这个文件的绝对路径呢?求大神指导。。PS ..上次有位大神说如此就写\\pc69\c$\xxx.dbf ,测试了无效果啊,PC69是局域网内电脑的名字,我们是应该使用名字还是该使用IP地址呢?为什么用这个方式连接本地磁盘不行呢。。假设本机叫pc70..如果这样写
$add='\\pc70\c$\BatMan\Daten\histwech.dbf';
报错如下>Warning: odbc_connect() [function.odbc-connect]: SQL error: [Microsoft][ODBC Visual FoxPro Driver]Fox Error 1, SQL state S1000 in SQLConnect in C:\AppServ\www\batman\batmanliste.php on line 34Warning: odbc_exec(): supplied argument is not a valid ODBC-Link resource in C:\AppServ\www\batman\batmanliste.php on line 132
求大神解释下啊。。PHPDBF LAN

解决方案 »

  1.   

    $add='\\\\192.168.1.70\c$\BatMan\Daten\histwech.dbf';
    $e="Driver={Microsoft Visual FoxPro Driver};SourceType=DBf;SourceDB=".$add.";Exclusive=No;NULL=NO;Collate=Machine;BACKGROUNDFETCH=NO;DELETED=NO;";
    $odbc=odbc_connect($e,'','');本地机子IP地址是192.168.1.70 本地磁盘是c 或者D 。。这样写都是可以的。。但是局域网内例如 PC69, IP地址是192.168.69 磁盘也是C。。
    这样写$add='\\\\192.168.1.69\c$\BatMan\Daten\histwech.dbf';就不可以。。再着,我在自己电脑上进行了局域网连接,把\\PC69\C创建为Y: 然后尝试把$add='\\\\192.168.1.70\Y$\BatMan\Daten\histwech.dbf';这样也是不行求大神快帮忙啊。。
      

  2.   

    同一资源定位:
    //主机名/共享名/路径/文件名

    //IP/共享名/路径/文件名你原来的 C$ 是假定 C 盘没有做显式的共享,而直接取系统默认的共享名
    你可以在命令行或vfp中这样使用,但不一定能在 php 中这样使用
    这取决于 php 编译时的开关状态你或许需要在 php 服务器上对其他机器上的 dbf 做 ODBC 数据源创建
      

  3.   

    大神,我看不懂你说的啊。。
    急死的了。。什么是同一资源定位啊?什么又是共享名呢??
    如果我必须要用PHP连接呢?到底该怎么写啊?我只是想读取局域网内其他机子上的dbf文件、我的报错在odbc_connect上都是OK的。但是在读取sql语句的时候报错!并且都是说找不到文件,所以我觉得应该是SourceDB的书写上面有错误。。但是我又不会写啊。求介绍啊!