急:求助:php怎么windows2000下的oracle建立连接?急! php怎么和windows2000下的oracle连接? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 (1)首先安装ora的客户端(2)配置net Assistant(3)在php.ini中去掉前面的分号extension=php_oci8.dll(4)重新启动apache服务(5)给你一段测试程序<?$conn = OCILogon ("scott", "tiger","orcl") or die(OCIError($conn));$sql = "select * from emp order by empno desc";$stmt = OCIParse ($conn, $sql);OCIExecute ($stmt,OCI_COMMIT_ON_SUCCESS) or die(OCIError($conn));echo "<table width='100%' border='1' cellspacing='0' cellpadding='0' bordercolorlight='#000000' bordercolordark='#FFFFFF' bgcolor='#CCCCFF'>\n";echo "<tr bgcolor='#aaaaFF'><td>ID</td><td>NAME</td><td>WORK</td></tr>\n";while (OCIFetchInto ($stmt, &$arr,OCI_NUM + OCI_RETURN_NULLS+OCI_RETURN_LOBS +OCI_ASSOC)){ echo "<tr>\n"; echo "<td>$arr[EMPNO]</td>\n"; echo "<td>$arr[ENAME]</td>\n"; echo "<td>$arr[JOB]</td>\n"; echo "</tr>\n";}echo "</table>";OCICommit ($conn);OCILogoff ($conn);?>如果可以看到结果,说明大功告成。如果出现tns错误,无法处理的服务名,可能是net Assistant配置不对祝你好运,:) 我试过了提示:Fatal error: Call to undefined function: ocilogon() 不知到是什么毛病了? Fatal error: Call to undefined function: ocilogon()我试了,也是出现这样的错误信息 去掉前面的分号extension=php_oci8.dll 后出现的出错信息无法定位程序输入点 OCILobfreeTemporary 于动态链接库 OCI.dll 上Unknown():Unable to load dynaic library 'c:\php\extensions\php_oci8.dll'找不道指定的程序 To;回复人: minszh(天外飞仙) 你的php.ini里面的那句配置extension=php_oci8.dll没有生效???你可以写个<?php phpinfo(); ?>依此内容写个phpinfo.php文件将会显示基本配置,如果没有列出oracle的模块表示,php.ini没有配置对回复人: ademgreat(快乐鱼) 你没有装oracle的客户端! 我有装ORACLE,装了服务器端和客户端 在php.ini中设置:extension_dir = X:/.../php/extensions/ ;改成你的php_oci8.dll所在路径. 试试这段代码,不用打开PHP_OCI8.dll 只需打开PHP_ORACLE.DLLORACLE服务器端必须是你自己的机。<?phpputenv("ORACLE_SID=");putenv("ORACLE_HOME=c:\orant"); /* 你的ORACLE所安装的目录*/$handle = ora_plogon("system", "manager"); /* 换成你登陆ORACLE所用的帐号密码*/$cursor = ora_open($handle);ora_commitoff($handle);$query = "SELECT * FROM nanyue"; /*SELECT一张已经存在的表*/ora_parse($cursor, $query) ;ora_exec($cursor);echo "<HTML><PRE>\n";echo "$query\n\n";$numcols = 0;while(ora_fetch($cursor)) { $numcols = ora_numcols($cursor); for ($column=0; $column < $numcols; $column++) { $data = trim(ora_getcolumn($cursor, $column)); if($data == "") $data = "NULL"; echo "$data\t"; } echo "\n";}$numrows = ora_numrows($cursor);echo "\nROWS RETURNED: $numrows\n";echo "</PRE></HTML>\n";ora_close($cursor);?>如果能正常输入,证明的与ORACLE的链接基本没问题了,还有的问题就是我也存在的问题顺便问一下,你用的ORACLE是什么版本的? 关键要打开PHP.INI里面关于extension部分中Oracle的设置打开 TO(快乐鱼)OCI.dll 的问题你解决了没? 不会吧,我现在用的就是8.0.5啊,会不会是8.0.5于PHP4 之间的兼容问题,我同事用PHP3 就没有问题 请问php+mysql如何实现写入数据成功全成功,失败全失败? 初学PHP!请教! 怎样才能输出json中文 Php如何catch网站的响应数? 怎么样查看被加密的php源文件啊? JS的小问题,大家进来看看 显示word文档的问题??? 谁能检查出本程序错误?(用php制作二级关联菜单,且能从数据库中取记录. ) 在window平台开发的php移植到linux平台下,麻烦吗?需要注意些什么? 讨论一下类似www.sogua.com这种技术用PHP是如何开发的。 着急:PHP安装无法支持Oracle?谢谢!!! 5个三角了,散分,很开心喔
(2)配置net Assistant
(3)在php.ini中
去掉前面的分号
extension=php_oci8.dll
(4)重新启动apache服务
(5)给你一段测试程序
<?
$conn = OCILogon ("scott", "tiger","orcl") or die(OCIError($conn));
$sql = "select * from emp order by empno desc";
$stmt = OCIParse ($conn, $sql);
OCIExecute ($stmt,OCI_COMMIT_ON_SUCCESS) or die(OCIError($conn));echo "<table width='100%' border='1' cellspacing='0' cellpadding='0' bordercolorlight='#000000' bordercolordark='#FFFFFF' bgcolor='#CCCCFF'>\n";
echo "<tr bgcolor='#aaaaFF'><td>ID</td><td>NAME</td><td>WORK</td></tr>\n";
while (OCIFetchInto ($stmt, &$arr,OCI_NUM + OCI_RETURN_NULLS+OCI_RETURN_LOBS +OCI_ASSOC))
{
echo "<tr>\n";
echo "<td>$arr[EMPNO]</td>\n";
echo "<td>$arr[ENAME]</td>\n";
echo "<td>$arr[JOB]</td>\n";
echo "</tr>\n";
}
echo "</table>";OCICommit ($conn);OCILogoff ($conn);
?>
如果可以看到结果,说明大功告成。如果出现tns错误,无法处理的服务名,可能是net Assistant配置不对
祝你好运,:)
提示:Fatal error: Call to undefined function: ocilogon()
不知到是什么毛病了?
我试了,也是出现这样的错误信息
Unknown():Unable to load dynaic library 'c:\php\extensions\php_oci8.dll'找不道指定的程序
你的php.ini里面的那句配置
extension=php_oci8.dll
没有生效???
你可以写个<?php phpinfo(); ?>依此内容写个phpinfo.php文件
将会显示基本配置,如果没有列出oracle的模块
表示,php.ini没有配置对
回复人: ademgreat(快乐鱼) 你没有装oracle的客户端!
extension_dir = X:/.../php/extensions/ ;改成你的php_oci8.dll所在路径.
ORACLE服务器端必须是你自己的机。
<?php
putenv("ORACLE_SID=");
putenv("ORACLE_HOME=c:\orant"); /* 你的ORACLE所安装的目录*/
$handle = ora_plogon("system", "manager"); /* 换成你登陆ORACLE所用的帐号密码*/
$cursor = ora_open($handle);
ora_commitoff($handle);
$query = "SELECT * FROM nanyue"; /*SELECT一张已经存在的表*/
ora_parse($cursor, $query) ;
ora_exec($cursor);
echo "<HTML><PRE>\n";
echo "$query\n\n";
$numcols = 0;
while(ora_fetch($cursor)) {
$numcols = ora_numcols($cursor);
for ($column=0; $column < $numcols; $column++) {
$data = trim(ora_getcolumn($cursor, $column));
if($data == "") $data = "NULL";
echo "$data\t";
}
echo "\n";
}
$numrows = ora_numrows($cursor);
echo "\nROWS RETURNED: $numrows\n";
echo "</PRE></HTML>\n";
ora_close($cursor);
?>如果能正常输入,证明的与ORACLE的链接基本没问题了,还有的问题就是我也存在的问题
顺便问一下,你用的ORACLE是什么版本的?
OCI.dll 的问题你解决了没?
会不会是8.0.5于PHP4 之间的兼容问题,我同事用PHP3 就没有问题