Проблема подключения PHP + ORACLE - PullRequest
1 голос
/ 05 июля 2011

Мой код ошибки:

Warning: ocilogon() [function.ocilogon]: OCIEnvNlsCreate() failed. There is something wrong with your system - please check that ORACLE_HOME is set and points to the right directory in /data01/app/htdocs/doosanclub/include/classes.pinc on line 47

и строка 47:

46:     function connect($DBuser,$DBpassword,$DBsid) {
47:        $this->conn = OCILogon($DBuser,$DBpassword,$DBsid);
48:        $this->mode = OCI_DEFAULT;
49:    }

Мой ORACLE_HOME установлен в root.sh: ORACLE_HOME=/oracle

и /oracle является правильным каталогом, который содержит /bin.

и .. my $ DBsid также определено в /oracle/network/admin/tnsnames.ora.

Я гуглил некоторые документы и попробуйте.Я сделал тестовый файл php.Код:

oci_internal_debug(1);   // turn on tracing
$conn = oci_connect("id", "pw", "SID");

и он отображает:

OCI8 DEBUG: OCINlsEnvironmentVariableGet at (/temp/php_source/php-5.2.13/ext/oci8/oci8.c:1067) OCI8 DEBUG: OCIEnvNlsCreate at (/temp/php_source/php-5.2.13/ext/oci8/oci8.c:1223) 
Warning: oci_connect() [function.oci-connect]: OCIEnvNlsCreate() failed. There is something wrong with your system - please check that ORACLE_HOME is set and points to the right directory in /data01/app/htdocs/doosanclub/db_connect_test.php on line 23
OCI8 DEBUG: OCIHandleFree at (/temp/php_source/php-5.2.13/ext/oci8/oci8.c:1547) 

ORACLE_HOME снова .. может быть, это неправильно ..?Я не знаю ..

Это первый раз, чтобы настроить эти вещи.Пожалуйста, помогите мне решить эту проблему.Спасибо!

1 Ответ

0 голосов
/ 08 июля 2011

Я решил эту проблему, просто добавив putenv () в базу данных, соединяющую файл PHP.

putenv("ORACLE_HOME=/oracle");

Но очень странно, что phpinfo(); отображает ORACLE_HOME=/oracle перед тем, как установить ORACLE_HOME.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...