Интерпретатор PHP получает неопределенную константу OCI_COMMIT_ON_SUCCESS с ADODB - PullRequest
4 голосов
/ 26 марта 2012


Я написал скрипт php, который должен быть запущен на интерпретаторе php (без Apache), который использует библиотеку adodb с базой данных Oracle, но когда я пытаюсь ее запустить, я получаю следующую ошибку:

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 ]

8 голосов
/ 26 марта 2012

После быстрого поиска я нашел эту страницу .Если в вашем php.ini не включено расширение oracle, тогда константа не определена.Попробуйте найти строку

;extension=php_oci8.dll

в вашем php.ini и удалите точку с запятой, чтобы раскомментировать ее.Затем перезапустите Apache, чтобы загрузить модуль и посмотреть, подключается ли он.

РЕДАКТИРОВАТЬ:

Попробуйте сбросить переменные php.ini, выполнив что-то вроде print_r(ini_get_all()), и посмотрите, что установлено, а что нет.«т.Возможно, вы используете другой php.ini для командной строки.

1 голос
/ 26 марта 2012

У меня были проблемы с Wamp при использовании 32-битных и 64-битных. Мне пришлось использовать 32-битный тонкий клиент Oracle с 32-битным Wamp-сервером, чтобы он работал правильно.

...