本文实例讲述了php远程连接oracle数据库操作实现方法。分享给大家供大家参考,具体如下:
一.以下是基于 wamprver 的php 访问oracle数据库的操作步骤:
1、第一步:让php支持oci
首先,安装php的集成运行环境,网上有很多集成,我安装的是wamprver的(具体的安装方法也可以参考之前写的另一篇文章),安装好后,从安装目录中找到php.ini文件,比如我本地的路径是d:\wamp\bin\php\php5.3.3,将php.ini中的php_oci8.dll的;去掉,也就是把注释去掉,相当于可以使用php_oci8了。
2、第二步:然后wam2022开学第一课prver运行后,将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 = (rvice_name = orcl) ) )
4、第四步:检测oci8是否配置成功
①.一般情况下,打开localhost即能显示 php兰亭集序译文info.php界面,里面即为 php 信息。可采用 “ctrl+f”搜索“oci”,查看是否有对应的oci模块,当然有一点php基础的完全可以直接访问自己编写的文件,记得里面加入“
echo phpinfo();
”即可。②.不要高兴太早,走到这一步,至少我是查不到的对应信息的,这时可以按照网上的一些建议,把php的ext目录下的php_oci8.dll拷到system32目录下
③.最后建议重启服务,最好是重启电脑(我在测试时发现,重启服务没用,有一次是无意中 刷新出了oci扩展,所以如果操作方法没错,我建议进行重启.)
二.代码测试远程连接 orcal 数据库(建议可用自己的oracle客户端试着是否能连接对方的服务端,以保证操作的成功率)
<?php/** * created by phpstorm. * ur: administrator * date: 2015/12/7 * time: 16:25 */echo 'ff';//进行连接数据库的参数配置$dbstr ="(description =(address = (protocol = tcp)(host =192.168.11.198)(port = 1521))(connect_data =(rver = dedicated)(rvice_name = orcl)(instance_name = orcl)))";//phpinfo();$conn = oci_connect('scott','tiger',$dbstr);//如果去掉最后一个参数或者为“ ”,默认连接本机$stmt = oci_par($conn, "lect * 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";} el {echo "no data found<br />\n";}echo " $nr新民主主义的对象ows records lected<br />\n";oci_free_statement($stmt);oci_clo($conn);?>
(参考网友的一点说明)
两种方式和oracle数据库建立链接
1.
复制代码 代码如下: $conn = oci_connect(‘urname’,’password’,”(description=(address=(protocol =tcp)(host=192.168.1.198)(por环境保护内容t = 1521))(connect_data =(sid=orcl)))”);
2.
复制代码 代码如下: $conn = oci_connect(‘urname’,’password’,’192.168.1.198/orcl’);
有的时候第一种方式不行,使用第二种,里面的几个参数分别是用户名、密码、oracle服务地址,其中orcl是服务名(但在我的机器上,后者无法访问)
另外提供一种简单的测试代码,相对而言,只是测试连接情况,更为方便:
<!doctype html><html><head> <meta http-equiv="content-type" content="text/html; chart=utf-8"> <title>php语句结束符</title></head><body><?php$dbstr ="(description =(address = (protocol = tcp)(host =192.168.11.102)(port = 1521))(connect_data =(rver = dedicated)(rvice_name = orcl)(instance_name = orcl)))";$dbconn=oci_connect('scott','tiger',$dbstr);if($dbconn!=fal){ echo "连接成功".'<br/>'; if(ocilogoff($dbconn)==true) { echo "关闭连接成功!".'<br/>';// }}el{ echo "连接失败".'<br/>';}?></body></html>
总结提示:
使你的php支持oracle,按照以下步骤即可:
1.安装php环境,找一下apprv或者xampp,一键安装,很方便
2.把php的ext目录下的php_oci8.dll拷到system32目录下
3.修改php.ini文件中的配置,去掉 ;extention = php_oci8.dll,去掉前面的分号
4.重启apache
注意:
1.有时候你并不会注意到的一点失误会浪费很多时间,我还要提醒的是,请记得打开oracle的服务监听!!
2.请记得作为服务端的pc机,要关闭防火墙!!
3.apach爱在钢琴上e的配置文件同样重要,修改httpd.conf文件,deny——>allow
<directory /> options followsymlinks allowoverride none order deny,allow# deny from all allow from all#允许所有访问 satisfy all</directory><directory />...... # require localoptions 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相关内容感兴趣的读者可查看本站专题:《php+oracle数据库程序设计技巧总结》、《php+mongodb数据库操作技巧大全》、《php基于pdo操作数据库技巧总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家php程序设计有所帮助。
本文发布于:2023-04-07 09:19:31,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/332b9b55051b4bd20e986258ee7954c7.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:PHP远程连接oracle数据库操作实现方法图文详解.doc
本文 PDF 下载地址:PHP远程连接oracle数据库操作实现方法图文详解.pdf
留言与评论(共有 0 条评论) |