System setup: Windows 2003; IIS 6 with fastcgi enabled; nts PHP version 5.2.10 (and 5.2.11 just tested); Oracle 9i (full client)
Problem: When I add in the extension=php_oci8.dll into my php.ini file, I get a startup error "Unable to load dynamic library 'C:phpextphp_oci8.dll' - The specified procedure could not be found". This is the same for any of the oracle extensions i.e. php_oci8_11g, php_pdo_oci, php_pdo_oci8. I also get the same messages for the mssql extensions php_mssql and php_pdo_mssql. Other extensions that have been enabled successfully are php_pdo, php_mysql, php_mysqli, php_msql, php_pgsql, php_pdo_pgsql and php_pdo_sqlite, so there is some database connectivity working (both through php and pdo).
I have checked and confirmed that the php path is set correctly (both in PHPRC and Path system variables), and the php.ini file sets the extensions path as well. All the dlls exist for the extensions, and my System Environment Path contains entries to my Oracle homebin directory (and sql serverbin). Oracle works fine when connecting through any other method (i.e. client, oracle forms, .asp pages etc), so that is not the issue. From what I can gather, the php_oci8.dll cannot find/use the oci.dll that comes with Oracle, and this is why it cannot find the procedure. Is this correct, and how do I get PHP to use the correct dll file?
Other attempts - I have downloaded the Oracle Instant Client, and also put this into my path variable (in front of my other Oracle entry as instructed on OTN), but I still get the same message. I have put all combinations of dll files in the phpext, php, windowssystem32 (removed now, so only in phpext and php), but no change. The IUSR application account has been given full access to the PHP and Oracle directories (and temporarily windows).
I used the prepackaged windows nts installer to upgrade PHP to 5.2.11 and this didn't work either (updated from 5.2.10, same error message).
Windows Server 2003, IIS 6 with fastcgi enabled, NTS PHP v 5.2.10/11, PHP_PDO, Oracle 9
September 23, 2009 3:52 PM