为什么就这么难呢?难道没有人做过?另外,有没有尝试过在Linux/Unix下连Oracle?

解决方案 »

  1.   

    将oracle目录下的子目录BIN下的oci.dll拷贝到system32
      

  2.   

    PHP4连接Oracle 8i的方法:1. 下载并安装 Oracle 8i for linux. 
    完全安装,不要只安装客户端 
    下载地点:chat.hn.cninfo.net/soft的hot下载 2. 下载PHP3或PHP4源码 
    下载地点:www.php.net www.phpuser.com chat.hn.cninfo.net/soft 3. 配置PHP的安装参数 
    for php 4: 
    ./configure --with-apxs=/usr/sbin/apxs \ 
    --prefix=/usr \ 
    --with-gd \ 
    --enable-versioning \ 
    --with-mysql=/usr \ 
    --with-oracle=/usr/local/oracle/8i/u01/app/oracle/product/8.1.5 \ 
    --with-oci8=/usr/local/oracle/8i/u01/app/oracle/product/8.1.5 \ 
    --with-zlib \ 
    --with-dbase \ 
    --with-filepro \ 
    --with-config-file-path=/etc/httpd/conf \ 
    --with-fdftk=no \ 
    --enable-debug=no \ 
    --enable-magic-quotes \ 
    --enable-debugger \ 
    --enable-bcmath \ 
    --enable-track-vars \ 
    --enable-safe-mode \ 
    --with-exec-dir=/usr/bin \ 
    --with-system-regex \ 
    --no-create \ 
    --no-recursion --with-oracle 选项让php可以通过ORA_函数访问 Oracle 7.x 或8.x 
    --with-oci8 选项让php可以使用更多更好的 oci8函数 4. make 5. make install 6. cp ./php.ini-dist /wherever/your/conf/files/are/php.ini 
    将php.ini拷贝到适当的位置 7. 修改httpd.conf 
    修改如下这一行 
    LoadModule php4_module lib/apache/libphp4.so 
    改为: 
    LoadModule php4_module /usr/lib/apache/libphp4.so 8. 重新启动APACHE 9. 测试PHP4的安装是否成功 
    创建一个test.php3内容为: 
    <? phpinfo(); ?> 
    在浏览器中访问它,看是否有ORACLE和ORACLE8的信息。 
    如果有的话,那么就恭喜你了! 10. 现在开始使用ORACLE的函数吧 
    <? 
    // 设置ORACLE环境变量 
    putenv("ORACLE_SID=PROD"); 
    putenv("ORACLE_HOME=/usr/local/oracle/8i/u01/app/oracle/product/8.1.5"); // 建立连接 
    // 修改现在的user_id,password,db以适应你的配置 
    if( = OCILogon("user_id","password","db")) 

    // 取得数据库的信息 
    printf("%s</P>", OCIServerVersion()); 

    else 

    printf("Conncetion Failed"); 

    ?> 
    这段程序会显示出你所连接到的ORACLE的一些信息 12. 其它 
    如果你需要连接到远程的ORACLE服务器,你就还需要设置你的sqlnet.ora 和 tnsnames.ora 来指定远程数据库的位置。 
    向数据库管理员要求,拷贝一些文件放到 
    /network/admin/ 目录下 
      

  3.   

    浅谈Windows下 PHP4.0与oracle 8的连接设置:
     
      PHP在Linux/Unix下连接oracle8是很容易的事,但在windows平台下实在不易,本人经过长久的摸索才找到可靠的方法,不敢独享, 
      现公布出来以飨大家。   笔者使用的开发环境:   windows 98 第二版   php4.04pl1   apache 1.3.14 window版   oracle 8.05客户端   PHP以CGI方式安装完毕测试成功后。以以下代码测试 
       <?php 
      $conn = OCILogon("cinmsiii","cinmsiii","(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.202)(PORT = 1521))(CONNECT_DATA = (SID = unicom)))"); 
       //$conn=OCILogon("cinmsiii","cinmsiii","cinms");如果oracle客户端是8.1.6i的话可以这样用,参数照上   if($conn!=false) 
       { 
      echo "ok"; 
       OCILogoff($conn); 
       } 
       else 
       echo "false"; 
       ?>   关于连接参数问题: 
      连接串设为以下: 
       (DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.202)(PORT = 1521))(CONNECT_DATA = (SID = unicom)))   PROTOCOL:为使用的网络协议   HOST:为数据库服务器主机名   SID:为数据库的实例号   这样作后一般没有任何问题。   如果你的oracle 8客户端为 8.1.6i企业版,可以把这些参数设在连接串中,用 oracle8的net easy config实用工具设置。 
      将设置后的连接串名称作为连接串传入。   推测oracle 7.x也可以用此方法,因没有环境,未作测试,如果你有兴趣可以试试