APACHE PHP5 ORACLE设置
来源:互联网 发布:squid 端口 不通 编辑:程序博客网 时间:2024/04/29 16:01
在windows 下配置PHP使用ORACLE数据库要点
在window下,经常用apache + PHP 来做应用平台,但是如果使用oracle做后台数据库,但又没有安装有oracle客户端,下面的配置可以参考
1、在没有安装oracle的机器上,PHP无法加载php_oci8.dll模块,原因是php_oci8.dll依赖的相关组件没有找到。
你正确设置了extension_dir = "C:/Apache/php/ext/"
并且打开了 extension=php_oci8.dll
但是查看apache的日志(在logs/error.log中),发现类似的错误
PHP Warning: PHP Startup: Unable to load dynamic library 'C://Apache//php//ext//php_oci8.dll' - /xd5/xd2/xb2/xbb/xb5/xbd/xd6/xb8/xb6/xa8/xb5/xc4/xc4/xa3/xbf/xe9/xa1/xa3/r/n in Unknown on line 0
那就会是上面描述的情况,使用oracle8扩展需要 Oracle 客户端库。Windows 用户需要至少版本号为 10 的库才能使用 php_oci8.dll。
到这个地址下载需要的版本 http://www.oracle.com/technology/tech/oci/instantclient/index.html
不过,下载需要一个注册才可以,如果你已经注册过,那么登录就可以了,你下载后是一个zip包,只需把那个包解压到一个目录中
比如 c:/oracle_client/ 那么,把这个地址加到 path中即可
但是这样还不够,还需要设置 TNS_ADMIN 这个变量,把这个变量的值设置为 tnsnames.ora文件所在的目录即可。
下面是tnsnames.ora的例子
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.102)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
下面是一个测试例子
<?php
$connection = oci_connect("hr", "pass","orcl","UTF8");
$query = "SELECT * from user_tables";
$statement = oci_parse ($connection, $query);
oci_execute ($statement);
// 打印执行结果
print '<table border="1">';
while($row = oci_fetch_array($statement, OCI_NUM)) {
print '<tr>';
foreach( $row as $item) {
print '<td>'.$item.'</td>';
}
print '</tr>';
}
print '</table>';
oci_close($connection);
?>
$connection = oci_connect("hr", "pass","orcl","UTF8");
第一个参数: hr 是登录数据库的用户名
pass是密码
orcl是tnsnames.ora中设置的项
utf8是数据库的字符集
- APACHE PHP5 ORACLE设置
- PHP5+Apache连接Oracle问题
- Mac 10.8.2 设置apache和php5
- 编译安装PHP5,并更改apache设置
- ubuntu16.04 安装apache php5 mysql & 相关设置
- 设置APACHE 支持SSI (ORACLE PORTAL +APACHE )
- apache+php5、IIS+php5、apache代理
- Apache+PHP5+MySql5
- PHP5+Apache+Mysql配置
- apache mysql php5配置
- apache support for php5
- apache整合PHP5 -- 转载
- apache+php5.3配置
- apache php5 配置
- Apache + PHP5 配置
- apache整合php5
- apache+php5+sqlite3移植
- 配置Apache支持PHP5
- 一个正则表达式的小工具--myRegexHelper
- 5.21 思考(fortran)
- google被黑了?
- 同学们好,这是老师的博客。
- c#实现自动点击鼠标左键(例子)
- APACHE PHP5 ORACLE设置
- mstsc VS vnc : 远程桌面最快的原因在于RDP协议_不懂英文
- 自考 计算机网络管理串讲笔记及知识重点总结
- spring知识点
- 程序员的人生
- C++多态性与虚函数
- “探究性学习”与“研究性学习”的区别
- mysql在unbuntu的三种安装方法 (自动,二进制包,源码)
- VC++的Unicode编程