如何在Windosws 2000中安装PHP4并访问Oracle

来源:互联网 发布:广西广电网络网上营业厅 编辑:程序博客网 时间:2024/06/02 05:38
系统环境:
1、操作系统:Windows 2000
2、数据库: Oracle 8i R2 (8.1.6) for NT 企业版
3、安装路径:C:/ORACLE

方法:

1、安装PHP4
第一步,解开php-4.0.3-Win32.zip(3.39MB)压缩包,把它放在C:/PHP下面。
第二步,把C:/PHP下面的php.ini-optimized文件复制到C:/WINNT目录下,并改名成php.ini。
修改php.ini文件:
extension_dir = e:/php
extension=php_oci8.dll
extension=php_oracle.dll
去掉前两项前面的“;”号
[browscap]
browscap = c:/php/browscap/browscap.ini
去掉browscap项前面的“;”号

第三步,把C:/PHP/php4ts.dll复制到C:/WINNT/system32目录下。
第四步,启动IIS管理程序。
开始—设置—控制面板—管理工具—Internet服务管理器
在“默认Web站点”上点鼠标右键,选属性,这时系统弹出“默认Web站点属性”窗口:

应用程序名输入c:/php/php.exe %s %s
点击配置:

点击添加:

第五步,在“默认Web站点属性”窗口上点取“ISAPI筛选器”标签,点击“添加”按钮,
在弹出的“筛选器属性”窗口的“筛选器名称”中输入“PHP”,
“可执行文件”中输入“C:/php/sapi/php4isapi.dll”,确定。

第六步,REGEDIT,启动注册表编辑器
找到:HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/W3SVC/Parameters/Script

Map。
新建一字符串:输入名称.php

第七步,回到命令行窗口,输入“net stop iisadmin”命令,终止IIS服务。系统会问你是否要将相关的

服务也停止,答是。
第八步,输入“net start w3svc”命令,重新启动IIS服务。
第九步,把c:/php/extensions下的php_oci8.dll、php_oracle.dll两个文件拷贝到c:/php下

1、写第一个连接Oracle的代码test.php
SQL> conn system/manager
SQL> create table test(a number,b char(10));
SQL> insert into test values(1,'一');
SQL> insert into test values(2,'二');
SQL> insert into test values(3,'三');
SQL> select * from test;

A B
---------- ----------
1 一
2 二
3 三
<?php
$handle=ora_plogon("system","manager") or die;     //创建连接oracle的句柄
$cursor = ora_open($handle);              //打开它并赋给一个游标
$query = "SELECT * FROM test";             //定义一个查询
ora_parse($cursor, $query) or die;           //把这个查询赋给游标
ora_exec($cursor);                   //运行游标,也即运行这个查询,之后

$cursor中存着查询结果
echo "<HTML><table border=1>/n";            //生成表头[HTML中]
$numcols = 0;                      //定义列数变量
while(ora_fetch($cursor)) {               //取得传回资料的一列,如果能取出

,则一直循环取
echo "<tr>";                    //生成列头[HTML中]
$numcols = ora_numcols($cursor);          //取得列的数目
for ($column=0; $column < $numcols; $column++) {  //循环取行
$data = trim(ora_getcolumn($cursor, $column)); //传回一列资料,$cursor中的

第$column列
if($data == "") $data = "NULL";        //如果取出的当前列为空,以“NULL

”字符串代替它
echo "<td>$data/t</td>";
}
echo "</tr>";                   //生成列尾[HTML中]
}
echo "</table></HTML>/n";               //生成表尾[HTML中]
ora_close($cursor);                   //关闭游标