Very Frankly Speaking

better than your blog.

Using PHP’s putenv() function to set environment variables and connecting to an Oracle database

Yay, my first real technical blog post!

I’ve been trying to tackle this issue for a while. I’ve been making a connection to an Oracle database using PHP, but I’d have to modify the environment variables to tell PHP where to find the Oracle installation and the tnsnames.ora file. To do this, I would use the putenv() PHP function to set the ORACLE_HOME and TNS_ADMIN variables. The problem was that it was being really really erratic. It would make a connection one day and the next day it’s not working. Did the freaking server admin make changes to the server? Am I pointing the environment variables to the right place? Trust me, I went over this issue for a long time.

Well the issue is that you’re not even supposed to be usnig putenv() to set environment variables. In fact it’s going to be deprecated by PHP ver. 6.0… Thanks to this PDF http://www.oracle.com/technology/tech/php/pdf/underground-php-oracle-manual.pdf on page 100 it states that you’re supposed to be setting the environment variables in the shell that starts Apache. I’ve sent the request in to my server admin (since i don’t have rights) and I’m pretty confident that this will work.

[UPDATE]

Setting the environment variables on Apache worked…  for the most part.  It still craps out maybe like 10% of the time.  This is still an issue which still needs some investigation.

2 Comments so far

  1. Php Manual Apache April 6th, 2008 11:49 am

    anybody here know of a good site to find more info on Php Manual Apache? I’ve got this site bookmarked and im gonna keep checking it out, but i still would like to find a site that covers Php Manual Apache a little more thoroughly..thanks

  2. PJG April 30th, 2008 1:16 pm

    I dont get it.. buried for too many technical words that i didnt read

Leave a reply

Mexico