Re: pb setting NLS_LANG with mod_perl 1.99_14et DBD::Oracle
[prev]
[thread]
[next]
[Date index for 2004/11/03]
Hi Stas,
Good advice !!
I've found that a user have a similar problem using PHP, and that the only
avalaible value for NSL_LANG is this case was
'American_America.EE8ISO8859P2'
I've tried this value and it works, but with bad accents.
"ou entrer l'heure d'enlèvement passée ou à venir. Entrer étoile si
l'enlèvement ne pourra pas se faire"
becomes
"ou entrer l'heure d'enl?vement passée ou ? venir. Entrer étoile si
l'enl?vement ne pourra pas se faire"
BUT with this strange value
'American_America.WE8ISO8859P1'
it seems to work fine.
"ou entrer l'heure d'enlèvement passée ou à venir. Entrer étoile si
l'enlèvement ne pourra pas se faire"
stays
"ou entrer l'heure d'enlèvement passée ou à venir. Entrer étoile si
l'enlèvement ne pourra pas se faire"
Maybe, Oracle doesn't like France ;-)
Thank you a lot Stas.
So if you have the same problem you can try this value....
Now my script is :
============================================================================
===
use DBI;
use DBD::Oracle;
use CGI;
use Env::C;
#Env::C::setenv('NLS_LANG', 'french_france.WE8ISO8859P1',1);
# Doesnt'work with mod_perl
# ===> ERROR ? ORA-00604: error occurred at recursive SQL level 1 ORA-01756:
quoted string not properly terminated (DBD ERROR: OCISessionBegin)
#Env::C::setenv('NLS_LANG', 'American_America.EE8ISO8859P2',1);
#Works but, not really fine
Env::C::setenv('NLS_LANG', 'American_America.WE8ISO8859P1',1);
#Seems to work !!!
Env::C::setenv('ORACLE_HOME', '/opt/oracle/product/10g/OraDB10g',1);
$ENTETE_HTML=0;
$q = new CGI; # create new CGI object
&EnteteHTML();
$dsn='DBI:Oracle:TOPDEV5';
$user='user';
$passwd='password';
$dbh = DBI->connect($dsn, $user,$passwd);
print "dbh=$dbh<br>";
print "ERROR ? $DBI::errstr<br>";
$SQLOrder="select MESSAGE_TEXT from AUDIO";
my $sel1 = $dbh->prepare($SQLOrder);
$sel1->execute()|| die "Error : $DBI::errstr";
my @cols;
while (@cols = $sel1->fetchrow_array) {
my $name=$cols[0];
print "$name<br>";
}
&EndHTML();
#===========================================================================
===
sub EnteteHTML
#===========================================================================
===
{
return if ($ENTETE_HTML);
print $q->header('text/html');
print "<HTML>\n";
print "<BODY TEXT=#000000 LINK=#FFFFFF ALINK=#FFFFFF VLINK=#FFFFFF
onLoad=document.next_DIALOG_OUTPUT_ID.XX_INPUT_XX.focus();>";
$ENTETE_HTML++;
}
#===========================================================================
===
sub EndHTML
#===========================================================================
===
{
return unless ($ENTETE_HTML);
print "</BODY></HTML>\n";
}
----- Original Message -----
From: "Stas Bekman" <stas@xxxxxx.xxx>
To: "Jean-Paul COGNET" <jean-paul.cognet@xxxxxxxxxx.xxx>
Cc: <modperl@xxxx.xxxxxx.xxx>
Sent: Wednesday, November 03, 2004 1:29 AM
Subject: Re: pb setting NLS_LANG with mod_perl 1.99_14et DBD::Oracle
> Jean-Paul COGNET wrote:
> > I have tried using Env::C (from CPAN), without using a startup.pl
script.
> > And it is the same behaviour.
> > Any idea ?
> > Thank you very much.
>
> I've never used Oracle, so I can't really tell what the problem is. If you
> could figure out how to reproduce it with something else I'd be more
helpful.
>
> Any luck with using google.com to find the solution? Feeding that error
> message to google shows quite a lot of hits. I'm not sure how relevant
> they are to our case.
>
> --
> __________________________________________________________________
> Stas Bekman JAm_pH ------> Just Another mod_perl Hacker
> http://stason.org/ mod_perl Guide ---> http://perl.apache.org
> mailto:stas@xxxxxx.xxx http://use.perl.org http://apacheweek.com
> http://modperlbook.org http://apache.org http://ticketmaster.com
>
> --
> Report problems: http://perl.apache.org/bugs/
> Mail list info: http://perl.apache.org/maillist/modperl.html
> List etiquette: http://perl.apache.org/maillist/email-etiquette.html
>
--
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html
 |
(message missing)
|