LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 807|回复: 1

大家好,小弟今天遇到难事了,请高手帮忙!

[复制链接]
发表于 2006-3-17 14:43:30 | 显示全部楼层 |阅读模式
我们公司 希望能够 用apche.php,Oracle这三个开源代码包来搭建我们WEB网站服务器可是 在安装完  apche 之后 就不知道怎么去 联合安装PHP,和 Oracle了.我知道安装MYSQL但是 就是没有试用过 用Oracle来做后台数据库!请大家多帮助 小弟感激不尽!
发表于 2006-3-17 14:49:31 | 显示全部楼层
安装了Oracle后,才可以与PHP整合,具体怎么安装Oracle用baidu google

a.设置好ORACLE_HOME环境变量(Oracle的安装目录)
b.Apache以DSO方式安装 ./configure --enable-module=so
c.重装编译安装PHP,并加上--with-oci8=$ORACLE_HOME
d.注意,还要设置LD_LIBRARY_PATH环境变量
引用:

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH

另外,如果运行时如果要用到这个变量,可以加入到/etc/ld.so.conf中。比如,在/etc/ld.so.conf中加入
/opt/oracle/product/9.2.0/lib
e.改Apache的启动脚本
Apache启动的时候,要有环境变量ORACLE_HOME,如果是RHEL3自带的Apache,则需要在/etc/init.d/httpd里,加入如下两句:
引用:
在/etc/init.d/httpd的31行后,加入:
#在这句之后
# RETVAL=0
ORACLE_HOME=/opt/oracle/product/9.2
ORACLE_SID=koook
#ORACLE_SID可以不用设置,但登录是要指定SID
export ORACLE_HOME ORACLE_SID

另外,如果是自安装的Apache,用apachectl启动的话,可以写一个脚本,如下:
引用oracle-apache-ctl)
#!/bin/sh
ORACLE_HOME=/opt/oracle/product/9.2
ORACLE_SID=koook
export ORACLE_HOME ORACLE_SID
echo "Oracle Home: $ORACLE_HOME"
echo "Oracle SID: $ORACLE_SID"
echo Starting Apache
./apachectl start

(另外,可能还需加入NLS_LANG环境变量,防止乱码)



以下是测试:

<?php

$db_conn = ocilogon( "system", "syspassword","koookdb");

//koookdb在Netca里设置,或修改tnsnames.ora文件

$cmdstr = "select ename, sal from scott.emp";

$parsed = ociparse($db_conn, $cmdstr);
ociexecute($parsed);

$nrows = ocifetchstatement($parsed, $results);

echo "<html><head><title>Oracle PHP Test</title></head><body>";
echo "<center><h2>Oracle PHP Test</h2><br>";
echo "<table border=1 cellspacing='0' width='50%'>\n<tr>\n";
echo "<td><b>Name</b></td>\n<td><b>Salary</b></td>\n</tr>\n";

for ($i = 0; $i < $nrows; $i++ )
{
    echo "<tr>\n";
    echo "<td>" . $results["ENAME"][$i] . "</td>";
    echo "<td>$ " . number_format($results["SAL"][$i],   2). "</td>";
    echo "</tr>\n";

}

echo "<tr><td colspan='2'> Number of Rows: $nrows</td></tr></table>";
echo "<br><em>If you see data, then it works!</em><br></center></body></html>\n";


?>
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表