1. <output id="hzk7v"><pre id="hzk7v"><address id="hzk7v"></address></pre></output>
      <output id="hzk7v"></output>
    2. <nav id="hzk7v"><i id="hzk7v"><em id="hzk7v"></em></i></nav>
    3. <listing id="hzk7v"><delect id="hzk7v"><em id="hzk7v"></em></delect></listing>

      PHP远程连接oracle数据库操作实现方法图文详解

       更新时间£º2019年04月11日 11:48:54   作者£ºmoTzxx   我要评论

      这篇文章主要介绍了PHP远程连接oracle数据库操作实现方法,结合图文形式详细分析了php连接Oracle数据库的相关配置¡¢实现方法¡¢遇到的问题¡¢解决方法及相关操作注意事项,需要的朋友可以参考下

      本文实例讲述了PHP远程连接oracle数据库操作实现方法¡£分享给大家供大家参考£¬具体如下£º

      一.以下是基于 wampServer 的php 访问oracle数据库的操作步骤£º

      1¡¢第一步£º让PHP支持OCI

      首先£¬安装PHP的集成运行环?#24120;?#32593;上有很多集成£¬我安装的是WampServer的£¨具体的安装方法也可以参考之前写的另一篇文章£©£¬安装好后£¬从安装目录中找到php.ini文件£¬比如我本地的路径是D:\wamp\bin\php\php5.3.3£¬将php.ini中的php_oci8.dll的;去掉£¬也就是把注释去掉£¬相当于可以使用php_oci8了¡£

      2¡¢第二步£º然后wampserver运行后£¬将php>php extentions中将php_oci8打上勾

      ¡¾其他的集成环境其实也是可以的£¬比如phpStudy,我们可以直接从php扩展的选项里打勾对应的¡¿¡£

      3¡¢第三步£ºoracle 数据库文件配置

      对于安装有Oracle客户端的PC机£¬可以在Oracle安装配置文件£¬tnsnames.ora文件£¬此文件路径是安装oracle的路径£¬比如我本机的是

      F:\oracle\product\10.2.0\client_1\NETWORK\ADMIN  £¬所连的192.168.1.198数据库£¬其中的配置详情如下£¨如果显示 127.0.0.1 默认为本机£©£º

       (DESCRIPTION =
        (ADDRESS_LIST =
         (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.198)(PORT = 1521))
        )
        (CONNECT_DATA =
         (SERVICE_NAME = orcl)
        )
       )
      
      

      4¡¢第四步£º检测oci8是否配置成功

      ¢Ù.一般情况下£¬打开localhost即能显示 phpinfo.php界面£¬里面即为 php 信息¡£可采用 ¡°Ctrl+F¡±搜索¡°oci¡±,查?#35789;?#21542;有对应的oci模块£¬?#27604;?#26377;一点php基础的完全可以直接访问自己编写的文件£¬记得里面加入¡°echo phpinfo();¡±即可¡£

      ¢Ú.不要高兴太早£¬走到这一步£¬至少我是查不到的对应信息的£¬这时可以按照网上的一些建议£¬把php的ext目录下的php_oci8.dll拷到system32目录下

      ¢Û.最后建议重启服务£¬最好是重启电脑£¨?#20197;?#27979;试时发现£¬重启服务没用£¬有一?#38382;?#26080;意中 刷新出了oci扩展£¬所以如果操作方法没错£¬我建议进行重启.£©

      二.代码测试远程连接 orcal 数据库£¨建议可用自己的oracle客户端试着是否能连接对方的服务端£¬以保证操作的成功率£©

      <?php
      /**
       * Created by PhpStorm.
       * User: Administrator
       * Date: 2015/12/7
       * Time: 16:25
       */
      echo 'ff';
      //进行连接数据库的参数配置
      $dbstr ="(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.11.198)(PORT = 1521))
      (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
      (INSTANCE_NAME = orcl)))";
      //phpinfo();
      $conn = oci_connect('scott','tiger',$dbstr);//如果去掉最后一个参数或者为¡° ?#20445;?#40664;认连接本机
      $stmt = oci_parse($conn, "select * from mono");
      oci_execute($stmt);
      $nrows = oci_fetch_all($stmt, $results);
      if ($nrows > 0) {
      echo "<table border=\"1\">\n";
      echo "<tr>\n";
      foreach ($results as $key => $val) {
      echo "<th>$key</th>\n";
      }
      echo "</tr>\n";
      for ($i = 0; $i < $nrows; $i++) {
      echo "<tr>\n";
      foreach ($results as $data) {
      echo "<td>$data[$i]</td>\n";
      }
      echo "</tr>\n";
      }
      echo "</table>\n";
      } else {
      echo "No data found<br />\n";
      }
      echo " $nrows Records Selected<br />\n";
      oci_free_statement($stmt);
      oci_close($conn);
      ?>
      
      

      £¨参考网友的一点?#24471;ö?/p>

      两种方式和oracle数据库建立链接

      1.

      复制代码 代码如下:
      $conn = oci_connect('username','password',"(DEscriptION=(ADDRESS=(PROTOCOL =TCP)(HOST=192.168.1.198)(PORT = 1521))(CONNECT_DATA =(SID=orcl)))");

      2.

      复制代码 代码如下:
      $conn = oci_connect('username','password','192.168.1.198/orcl');

      有的时候第一种方式不行£¬使用第二种£¬里面的几个参数分别是用户名¡¢密码¡¢oracle服务地址£¬其中orcl是服务名(但在我的机器上£¬后者无法访问)

      另外提供一种简单的测?#28304;?#30721;£¬相?#36828;?#35328;£¬只是测试连接情况£¬更为方便£º

      <!DOCTYPE HTML>
      <html>
      <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>php语句结束符</title>
      </head>
      <body>
      <?php
      $dbstr ="(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.11.102)(PORT = 1521))
      (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
      (INSTANCE_NAME = orcl)))";
      $dbconn=oci_connect('scott','tiger',$dbstr);
      if($dbconn!=false)
      {
        echo "连接成功".'<br/>';
        if(OCILogOff($dbconn)==true)
        {
          echo "关闭连接成功!".'<br/>';//
        }
      }
      else
      {
        echo "连接失败".'<br/>';
      }
      ?>
      </body>
      </html>
      
      

      总结提示£º

      使你的php支持oracle£¬按照以下步骤即可£º
      1.安装php环?#24120;?#25214;一下appserv或者xampp£¬一键安装£¬很方便
      2.把php的ext目录下的php_oci8.dll拷到system32目录下
      3.修改php.ini文件中的配置£¬去掉  ;extention = php_oci8.dll£¬去掉前面的分号
      4.重启apache

      注意£º

      1.有时候你并不会注意到的一点失误会浪费很多时间£¬?#19968;?#35201;提醒的是£¬请记得打开oracle的服务监听£¡£¡
      2.请记得作为服务端的PC机£¬要关闭防火墙£¡£¡
      3.apache的配置文件同样重要£¬修改httpd.conf文件£¬Deny¡ª¡ª>Allow 

      <Directory />
        Options FollowSymLinks
        AllowOverride None
        Order deny,allow
      #  Deny from all
        Allow from all
      #允许所有访问
        Satisfy all
      </Directory>
      <Directory />
      ...
      ...
       #  Require local
      Options Indexes FollowSymLinks
      #  onlineoffline tag - don't remove
        Order Deny,Allow
        Allow from all
       #  Require local
      </Directory>
      
      

      4.上文中一直提示的SID 或者说oracle服务器名称什么的真的好难懂£¬我是直接用了配置文件中所显示的名称¡°orcl¡±,这个在你安装软件时£¬会有一个服务名称的提醒£¬自己默认的orcl而已£¬估计些其他的名称也是可以的¡£网上介绍的很乱

      如果不知道怎么操作£¬查看学习文档是最正确的选择£¬希望能帮到你¡£

      有的时候第一种方式不行£¬使用第二种£¬里面的几个参数分别是用户名¡¢密码¡¢oracle服务地址£¬其中orcl是服务名¡£

      #  Require local
      
      

      更多关于PHP相关内容?#34892;?#36259;的读者可查看本站专题£º¡¶php+Oracle数据库程序设计技巧总结¡·¡¢¡¶PHP+MongoDB数据库操作技巧大全¡·¡¢¡¶PHP基于pdo操作数据库技巧总结¡·¡¢¡¶php面向对象程序设计入门教程¡·¡¢¡¶php字符串(string)用法总结¡·¡¢¡¶php+mysql数据库操作入门教程¡·及¡¶php常见数据库操作技巧汇总¡·

      希望本文所述?#28304;?#23478;PHP程序设计有所帮助¡£

      相关文章

      • 关于php 接口问题(php接口主要也就是运用curl,curl函数)

        关于php 接口问题(php接口主要也就是运用curl,curl函数)

        本篇文章是对php中的接口问题(php接口主要也就是运用curl,curl函数)进行了详细的分析介绍£¬需要的朋友参考下
        2013-07-07
      • PHP简单日历实现方法

        PHP简单日历实现方法

        这篇文章主要介绍了PHP简单日历实现方法,涉及php日期与时间的相关运算操作,非常简单实用,需要的朋友可以参考下
        2016-07-07
      • php实现的后台表格分页功能示例

        php实现的后台表格分页功能示例

        这篇文章主要介绍了php实现的后台表格分页功能,涉及php针对数据库的连接¡¢查询¡¢?#22659;ý¡?#21160;态生成表格等相关操作技巧,需要的朋友可以参考下
        2017-10-10
      • PHP的autoload机制的实现解析

        PHP的autoload机制的实现解析

        在使用PHP的OO模式开发系统时£¬通常大家习惯上将每个类的实现?#21363;?#25918;在一个单独的文件里£¬这样会很容易实现对类进行复用£¬同时将?#27425;?#25252;时也很便利
        2012-09-09
      • 隐藏X-Space个人空间下方版权方法隐藏X-Space个人空间标题隐藏X-Space个人空间管理版权方法

        隐藏X-Space个人空间下方版权方法隐藏X-Space个人空间标题隐藏X-

        隐藏X-Space个人空间下方版权方法隐藏X-Space个人空间标题隐藏X-Space个人空间管理版权方法...
        2007-02-02
      • php广告加载类用法实例

        php广告加载类用法实例

        这篇文章主要介绍了php广告加载类用法实例,采用jQuery技术可实现异?#25509;?#21516;步加载,具有非常广泛的实用价值,需要的朋友可以参考下
        2014-09-09
      • php对象在内存中的存在形式分析

        php对象在内存中的存在形式分析

        这篇文章主要介绍了php对象在内存中的存在形式,实例分析了对象在内存中的存储及运算原理,具有一定参考借鉴价值,需要的朋友可以参考下
        2015-02-02
      • 通过缓存数据库结果提高PHP性能的原理介绍

        通过缓存数据库结果提高PHP性能的原理介绍

        众所周知£¬缓存数据库查询的结果可以显著缩短脚本执行时间£¬并最大限度地减少数据库服务器上的负载¡£如果要处理的数据基本上是静态的£¬则该技术将非常?#34892;§¡?#36825;是因为对远程数据库的许多数据请求最终可以从本地缓存得到满足£¬从而不必连接到数据库¡¢执行查询以及获取结果
        2012-09-09
      • PHP空?#23548;?#27979;函数与方法汇总

        PHP空?#23548;?#27979;函数与方法汇总

        PHP是一种宽松类型的编程语言£¬在函数中?#28304;?#20837;的参数值的¡°类型¡±以及¡±值是否为空或者NULL¡°进行检查是不可缺少的步骤¡£
        2017-11-11
      • php获取发送给用户的header信息的方法

        php获取发送给用户的header信息的方法

        这篇文章主要介绍了php获取发送给用户的header信息的方法,涉及php中headers_list函数的使用技巧,需要的朋友可以参考下
        2015-03-03

      最新评论

      3dÊÔ»úºÅÖвÊÍø

        1. <output id="hzk7v"><pre id="hzk7v"><address id="hzk7v"></address></pre></output>
          <output id="hzk7v"></output>
        2. <nav id="hzk7v"><i id="hzk7v"><em id="hzk7v"></em></i></nav>
        3. <listing id="hzk7v"><delect id="hzk7v"><em id="hzk7v"></em></delect></listing>

            1. <output id="hzk7v"><pre id="hzk7v"><address id="hzk7v"></address></pre></output>
              <output id="hzk7v"></output>
            2. <nav id="hzk7v"><i id="hzk7v"><em id="hzk7v"></em></i></nav>
            3. <listing id="hzk7v"><delect id="hzk7v"><em id="hzk7v"></em></delect></listing>