PHP解释器使用ADODB获取未定义的常量OCI_COMMIT_ON_SUCCESS

时间:2012-03-26 18:25:40

标签: php oracle11g interpreter adodb oci


我写了一个php脚本,必须在php解释器(没有Apache)上运行,它使用带有Oracle数据库的adodb库,但是当我尝试运行它时,我收到以下错误:

PHP Notice:  Use of undefined constant OCI_COMMIT_ON_SUCCESS - assumed 'OCI_COMMIT_ON_SUCCESS' in c:\proyect\backend\libraries\adodb\adodb.inc.php on line 4248

我已经检查过,并且启用了php_oci8和php_oci8_11g,因此应该定义常量。此外,当我使用Apache运行此脚本时,它没有任何问题。

提前致谢!

2 个答案:

答案 0 :(得分:8)

快速搜索后,我找到this page。如果你没有在php.ini中启用oracle扩展,那么常量是未定义的。尝试搜索

;extension=php_oci8.dll
在你的php.ini中

并删除分号以取消注释它。然后,重新启动Apache以加载模块并查看它是否连接。

编辑:

尝试通过执行类似print_r(ini_get_all())的操作来转储php.ini变量,并查看设置内容和不设置内容。您可能正在使用不同的php.ini作为命令行。

答案 1 :(得分:1)

我遇到了使用32位和64位的wamp问题。我不得不使用带有32位wamp服务器的32位Oracle瘦客户端来使其正常工作。