#24343 [NoF->Csd]: Oracle 9.2.0 client libs do not work
| From: | tony2001@php.net | Date: | Wed, 12 Apr 2006 14:14:32 +0000 |
| Subject: | #24343 [NoF->Csd]: Oracle 9.2.0 client libs do not work | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-95684@lists.php.net to get a copy of this message | ||
ID: 24343
Updated by: tony2001@php.net
Reported By: thomas at fivemile dot net
-Status: No Feedback
+Status: Closed
Bug Type: OCI8 related
Operating System: Redhat Linux 8.0
PHP Version: 4.3.3-dev
New Comment:
Thank you for your bug report. This issue has already been fixed
in the latest released version of PHP, which you can download at
http://www.php.net/downloads.php
Previous Comments:
------------------------------------------------------------------------
[2006-04-12 14:07:00] michael at six dot de
Right now I had the same error on an older php installation: apache
1.3.31, php 4.3.8, oracle 9.2 (suse linux 9.3). The problem seems to
come up when glibc and oracle nls environment variables are not
consistent. The original bug report mentions
LANG=en_US.UTF-8
NLS_LANG=german_germany.WE8DEC
in the non working installation whereas it is
LANG=en_US
NLS_LANG=german_germany.WE8DEC
in the working installation. For me it was
unset LANG
LC_CTYPE=de_DE.UTF-8
NLS_LANG=GERMAN_GERMANY.WE8ISO8859P1
in the non working case. When unsetting LC_CTYPE everything is ok.
Newer suse linux distributions (others too) in general have utf-8
environment variables set. In my case it looks like LC_CTYPE was added
in suse 9.3. It seems that system and oracle nls environments simply
have to be consistent, for example:
LANG=de_DE.UTF-8
NLS_LANG=GERMAN_GERMANY.UTF8
works without a problem.
------------------------------------------------------------------------
[2004-09-07 19:28:48] roman_petrov at gorodok dot net
I have this problem to:
I install Oracle 9.2.0, PHP 5.0.1 o(also I try PHP 4.3.8), apache
2.0.50 and get an error when connect to my database with NLS_LANG
another, than AMERICAN.
My configure command is:
Configure Command './configure'
'--with-apxs2=/usr/local/apache2/bin/apxs' '--without-mysql'
'--with-pgsql' '--with-oci8=/opt/oracle/product/9.2.0'
'--with-oracle=/opt/oracle/product/9.2.0' '--with-zlib'
'--enable-sigchild'
My PHPinfo said:
oci8
OCI8 Support enabled
Revision $Revision: 1.257 $
Active Persistent Links 0
Active Links 0
Oracle Version 9.2
Compile-time ORACLE_HOME /opt/oracle/product/9.2.0
Libraries Used no value
Temporary Lob support enabled
Collections support enabled
oracle
Oracle Support enabled
Oracle Version 9.0
Compile-time ORACLE_HOME /opt/oracle/product/9.2.0
Libraries Used no value
I set NLS_LANG=RUSSIAN.CL8KOI8R
Error is
OCIDebug: _oci_open_server new conn=0 dname=xxx
Warning: oci_new_connect()
[function.oci-new-connect]:
OCISessionBegin: ORA-00604: error occurred at recursive SQL level
1
ORA-00911: invalid character in /home/www/test.php on line 21
OCIDebug: _oci_open_session: FAILURE -> CLEANUP called
When I set NLS_LANG=AMERICAN , connect work and my query return data.
But I need NLS_LANG=RUSSIAN.CL8KOI8R
for my Russian symbols.
Also, oracle (not oci8) functions in PHP work and get me a data with my
language.
Please, help to me.
------------------------------------------------------------------------
[2004-04-23 13:01:25] tony2001@php.net
I would be very thankful, if you try it without this fix, but with
latest PHP5 snapshot.
BTW, Apache2 is NOT recommended for use in production, so if you want
it to be stable, you need to use Apache 1.3.x.
------------------------------------------------------------------------
[2004-04-23 12:54:05] timothy_haak at yahoo dot com
Hi
Don't know why but by removing the following variable from my profile I
managed to get it to work.
NLS_LANG="ENGLISH_UNITED KINGDOM.WE8MSWIN1252"
export NLS_LANG
Hope this helps
------------------------------------------------------------------------
[2004-02-14 08:46:19] timothy_haak at yahoo dot com
Hi sorry ment to add the script as well
I have also tested connecting from sqlplus which i can do.
<?php
ociinternaldebug(1);
if (OCILogon("<username>", "<password>",
"pierceg"))
{
echo "Successfully connected to Oracle.\n";
}
else
{
echo "Oracle Connect Error ";
}
?>
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/24343
--
Edit this bug report at http://bugs.php.net/?id=24343&edit=1