Re: PHP+Oracle: could not resolve service name
Date: Wed, 09 Apr 2008 16:13:00 -0500
Álvaro G. Vicario wrote:
> I'm developing a PHP 4 application in a Windows Server 2003 box. I'm
> connecting to a remote Oracle 10g server using ODBC (with a system-wide
> DSN). I didn't install any of the software and my Oracle experience doesn't
> got further than writing queries ;-)
> My issue is that PHP scripts cannot connect to the database server when I
> run them from the *command line*. I get this error message:
> SQL error: [Microsoft][ODBC driver for Oracle][Oracle]ORA-12154: TNS:no
> se ha podido resolver el nombre del servicio, SQL state 08001 in SQLConnect
> Which translates into English as "could not resolve service name".
> The *very same code* runs fine when parsed through the web server (Apache2 +
> PHP module running as LocalSystem) and I've found no problems using TOAD.
> Apart from environment, PHP configuration is identical in command line and
> After some Googling I've tried setting TNS_ADMIN and ORACLE_HOME
> environmental variables but it didn't make any difference. I just can't
> understand why all programs can connect except command line PHP. Do you have
> any clue?
> Sample code:
> define('DB_DSN', 'FOO');
> define('DB_USERNAME', 'FOO');
> define('DB_PASSWORD', 'FOO');
> odbc_connect(DB_DSN, DB_USERNAME, DB_PASSWORD);
you still need to add an entry in your tnsnames.ora file (generally located in the oracle home under network\admin.
A google search will give you many examples of how to create a tnsnames entry. Received on Wed Apr 09 2008 - 16:13:00 CDT