快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

不使用OCI8接口如何连接PHP和Oracle


随着网站规模的扩大,MySql显然不能满意需求,在许多网站都
采用大型数据库Oracle的情况下,如何使用PHP来访问Oracle变的越发重要了。
我从我编写的一个简朴iERP系统谈我自己是如何做的,在PHP官方手册里也有说明。
一般情况下或者说大多数人都是用Oracle8 Call-Interface(OCI8)来连接数据库,
我这里介绍不使用OCI8接口而直接使用PHP的Oracle函数来连接数据库并处理数据。

注重:
php.ini配置中要去掉 ;extension=php_oracle.dll 前的分号即
extension=php_oracle.dll

1,连接数据库

使用ora_logon()或者ora_plogon()来连接上数据库
ora_plogon功能与ora_logon类似,只不过ora_plogon开启与 Oracle 的长期连结
直至web服务停止

$handle = ora_plogon("system@localhost", "manager") or die;
"system@localhost" 其中localhost是oracle SID 名称,system是用户名称,manager是用户密码

2,打开游标
$cursor = ora_open($handle);

3,分析语法并执行指令
$query = "select count(*) from area where areacode = \\'$addcode\\'";
ora_parse($cursor, $query) or die;
ora_exec($cursor);

4,获取数据
if(ora_fetch($cursor))
$datacount = ora_getcolumn($cursor, 0);
5,关闭游标
ora_close($cursor);

当然了你有可能执行的是delete或者insert语句不存在获取数据的步骤如:
INSERT:(插入)

$handle = ora_plogon("system@localhost", "manager") or die;
ora_commiton($handle);
$cursor = ora_open($handle);
$query = "insert into area(areacode,areaname) values(\\'$addcode\\',\\'$addname\\')";
ora_parse($cursor, $query) or die;
ora_exec($cursor);
ora_close($cursor);

DELETE:(删除)

$handle = ora_plogon("system@localhost", "manager") or die;
$cursor = ora_open($handle);
ora_commiton($handle);
$query = "delete from area where areacode in (\\'222\\',\\'444\\')" ;
ora_parse($cursor, $query) or die;
ora_exec($cursor);
ora_close($cursor);


返回类别: 教程
上一教程: [转]类与PHP (III)
下一教程: php和js交互一例

您可以阅读与"不使用OCI8接口如何连接PHP和Oracle"相关的教程:
· PHP如何连接ORACLE?
· 如何在PHP中使用Oracle数据库(4)
· 如何在PHP中使用Oracle数据库(6)
· 如何在PHP中使用Oracle数据库(5)
· 如何在PHP中使用Oracle数据库(1)
    微笑服务 优质保证 索取样品