Page 1 sur 1

Problème "Unable to load dynamic library php_oci8.dll"

Posté : 02 nov. 2012, 11:36
par erico13
Bonjour à tous,

Après une longue semaine de recherche, je me tourne vers vous pour m'aider!
Je suis sous Windows Server 2003, avec PHP 5.1.4, serveur Web IIS 6.0 et Oracle Client 9.2
Aucun problème jusque là.

Code : Tout sélectionner

PHP 5.1.4 (cli) (built: May 4 2006 10:35:22) Copyright (c) 1997-2006 The PHP Group Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies
Je souhaite mettre à jour PHP vers la version 5.4.7 et c'est là que j'ai encore et toujours le même problème :

Code : Tout sélectionner

PHP Warning: PHP Startup: Unable to load dynamic library 'C:\php\ext\php_oci8.dll' - The specified procedure could not be found. in Unknown on line 0 PHP 5.4.7 (cli) (built: Sep 12 2012 23:43:11) Copyright (c) 1997-2012 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies
Mon php.ini est correctement configuré :

Code : Tout sélectionner

extension_dir = C:\php\ext ... extension=php_oci8.dll ;
La dll est bien présent dans le dossier
Mon path inclut bien le dossier bin d'Oracle Client
J'ai même rajouté le fichier php_oci8.dll dans le dossier system32 mais toujours le même problème

Là où c'est carrément mystique c'est que pour exactement la même config (même php.ini, meme dossier php, même librairies) sur un serveur de dév ayant les mêmes caractéristiques, le tout fonctionne. A la différence près que la version d'Oracle Client n'est pas la 9.2 mais la 10.
J'ai alors installé la version 10 d'Oracle Client en prod mais le problème persiste.

Je reprécise qu'avec la version 5.1.4 de PHP je n'ai aucun problème, ce n'est qu'en basculant sur la version 5.4 que j'ai cette erreur!

Merci d'avance pour votre aide!

Re: Problème "Unable to load dynamic library php_oci8.dll"

Posté : 02 nov. 2012, 13:56
par moogli
salut,

as tu essayé extension_dir = "C:/php/ext" ?

La version précédent de php était au même endroit ?

as tu comparé les php.ini ?

le client oracle est bien dans le path ?

@+

Re: Problème "Unable to load dynamic library php_oci8.dll"

Posté : 02 nov. 2012, 14:51
par erico13
Merci pour ta réponse.

J'ai essayé extension_dir = "C:/php/ext" mais j'ai toujours l'erreur.

Oui, la version de php précédente était exactement au même endroit.
J'ai en effet comparé les .ini , j'ai parcouru le fichier du début à la fin et hormis les instructions obsolètes dans la nouvelle version, j'ai les mêmes valeurs. De plus j'ai exactement le même .ini que sur mon serveur de dév (qui fonctionne).
Et le client oracle est bien dans le PATH, j'ai même créé une variable ORACLE_HOME dans le doute, même si ce n'est normalement pas nécessaire.

Je pense que l'erreur vient de la liaison entre php et Oracle, mais je ne sais vraiment pas où.

Tu aurais d'autres pistes ?

Merci encore en tout cas !

Re: Problème "Unable to load dynamic library php_oci8.dll"

Posté : 07 nov. 2012, 14:03
par erico13
Petit up ! Toujours pas trouvé de solution, quelqu'un aurait une piste?

Merci!

Re: Problème "Unable to load dynamic library php_oci8.dll"

Posté : 07 nov. 2012, 20:25
par cezame
vérifie si t'as msvcr71.dll dans ton repertoire system32. Juste au cas ou ..
A mon avis rien a voir mais dans le doute

Re: Problème "Unable to load dynamic library php_oci8.dll"

Posté : 14 nov. 2012, 14:30
par erico13
Merci cezame pour ta réponse, j'ai bien cette dll dans system32.

En fait j'ai résolu mon problème, de manière improbable ! Ca pourra peut-être en aider certains...

En fait à chaque fois que je testais la nouvelle version, je remplaçais d'abord le dossier php puis ensuite le php.ini
Pour une fois, j'ai d'abord remplacé en premier le php.ini puis ensuite le dossier php : et apparemment ça a son importance puisque il a pu charger le module oci cette fois!

Re: Problème "Unable to load dynamic library php_oci8.dll"

Posté : 14 nov. 2012, 14:32
par xTG
Tu arrêtais le serveur avant d'effectuer cette opération ? :mrgreen:

Re: Problème "Unable to load dynamic library php_oci8.dll"

Posté : 14 nov. 2012, 14:36
par erico13
Oui quand-même ! :D