Suite à la migration vers un serveur Wamp, je rencontre des difficultés de connexion vers mes bases Oracle. Le paramètre qui semble poser problème est le NLS_LANG:
Message d'erreur : Warning: ocilogon() [function.ocilogon]: ORA-12705: invalid or unknown NLS parameter value specified...
J'ai essayé de spécifier des paramètres dans ma fonction oci_connect(), de passer par des variables d'environnement, la base de registre... Rien n'y fait.
rappel des pré-requis pour oracle avec php 5.2.x : **************************************
PREREQUIS : INSTALLER LE CLIENT au moins 10 d'ORACLE !!! ------------------------------------------------------ depuis les versions 5.2.x, l'extension Oracle nécessite au moins la version 10 d'Oracle, sous Windows. page : [www.php.net] [www.php.net]
******************************************************************* Pré-requis (page : [www.php.net] ) Vous avez besoin des bibliothèques Oracles pour utiliser cette extension. Les utilisateur Windows doivent installer les bibliothèques de version 10 ou supérieure pour se servir de la bibliothèque php_oci8.dll.
Note: Cette extension ne supporte plus les bibliothèques Oracle 8 client. Cependant, vous pouvez toujours vous connecter aux serveurs Oracle 8 tant que la bibliothèque client (v.9+) le supporte.
La meilleure façon d'installer tous les fichiers nécessaires est d'utiliser le client Oracle Instant, qui est disponible depuis : » [www.oracle.com]. Pour fonctionner avec OCI8, le module OCI8 "basic" du client Oracle Instant est suffisant. Le client Instant n'a pas besoin que les variables d'environnement ORACLE_SID ou ORACLE_HOME soient définies.Par contre, vous devez toujours définir les variables LD_LIBRARY_PATH et NLS_LANG.
Avant d'utiliser cette extension, assurez-vous que vous avez bien paramétré vos variables d'environnement Oracle, ainsi que votre démon utilisateur. Ces variables doivent être définies avant de démarrer votre serveur web. Les variables dont vous pouvez avoir besoin sont :
ORACLE_HOME ORACLE_SID LD_PRELOAD LD_LIBRARY_PATH NLS_LANG Pour les variables d'environnement Oracle moins fréquemment utilisées comme TNS_ADMIN, TWO_TASK, ORA_TZFILE ainsi que les diverses configurations globales Oracle comme les variables ORA_NLS33, ORA_NLS10 et NLS_*, référez-vous à la documentation Oracle.
Après avoir configuré ces variables pour votre utilisateur "serveur web", assurez-vous aussi d'ajouter cet utilisateur (nobody, www) au groupe Oracle.
**********************************************
add a note User Contributed Notes OCI8 christopher dot jones at oracle dot com 17-Jun-2007 09:25 There are several good books on PHP and Oracle available - search your favorite bookstore. There is also a free book
from Oracle "The Underground PHP and Oracle Manual" that covers the OCI8 extension:
[otn.oracle.com] (free registration for OTN required, IIRC). Disclaimer: I'm one of its authors. James VL 28-Feb-2007 10:49 re: Andrei Kubar
I was using Oracle Instant Client on Windows XP, and was getting the
PHP Startup: Unable to load dynamic library 'C:\php\ext\php_oci8.dll' - The specified module could not be found.
error at startup, even though I had done all (most?) of the PHP and Oracle setup routines.
For me it wasn't the lack of mfc*.dll files, but a simple PATH issue: in addition to defining the environment variable
TNS_ADMIN, I had to include my instant client directory in my PATH.
Problème d'utilisation de OCI PHP 5.2.5 vers Oracle Envoyé par: Gouenec (---.w90-0.abo.wanadoo.fr) Date: 01 f�vrier 2008 09:45 -------------------------------------------------
Bonjour à tous, j'ai un probleme de connexion à oracle. comment faire et comment definir les variables avant le demarrage du serveur web merci de votre aide en fait j'utilise "WAMPSERVER" ATTENTE REPONSE C'EST URGENT et encore merci
Quelquesoit la version de Wamp installée, la connexion a Oracle via les extensions OCI8 est IMPOSSIBLE !!
--> Fatal error: Call to undefined function OCIconnect() in C:\wamp5\www\test\bases.php
- windows XP - instant client 10g OK (connexon sqlplus OK) - extesnions OCI positionné dans le php.ini (a la main , bien sur ca sinon ca ne marche pas)
Les modifs des extensions via l'interface graphique ne fonctionnent pas ! Les modifs 'a la main' du PHP.ini LOADé !! ne sont pas prises en compte phpinfo donne toujous le meme resulatat : pas d'extension OCI active !!!
Pour info, coté Oracle pour ceux qui connaissent mal : OCILogon est obsolete ! LEs variables ORACLE_HOME et ORACLE_SID ne servent a rien sur un client Oracle ! TNS_ADMIN et autres TNSNAMES.ORA sont inutiles (une chaine de connexion EZConnect suffii !)
Quelqu'un aurait il une reponse claire et definitive sur la question. Merci d'avance a tous