IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

Driver OCI introuvable lors d'une connexion avec PDO [Wamp]


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    66
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 66
    Points : 56
    Points
    56
    Par défaut Driver OCI introuvable lors d'une connexion avec PDO
    Bonjour,

    Je vous expose mon problème ci-dessous mais à toutes fins utiles, voici ma configuration :

    - Windows 7 Professionnel Service Pack 1 (64 bits)
    - WampServer 2.5 64 bits
    - Apache 2.4.9
    - PHP 5.5.12
    - MySQL 5.6.17
    - L'icône de notification de WampServer est verte
    - L'accès à localhost est ok
    - L'accès à phpMyAdmin est ok
    - Message d'erreur : could not find driver
    - Antivirus : Symantec Endpoint Protection

    Et voici donc mon problème :

    Je viens d'installer WampServer 2.5 64 bits sur mon nouveau PC, celle-ci s'est bien déroulée.

    J'ai alors essayé un script PHP de connexion à une base de données Oracle 10g via PDO (qui fonctionne sur un PC plus ancien équipé d'un WampServer 2.0) mais j'obtiens le message d'erreur "could not find driver".

    Voici le script en question :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    	try
    	{
    		return new PDO('oci:dbname=' . f_ValParam($p_FichierIni, 'nom_bdd'), f_ValParam($p_FichierIni, 'nom_user_bdd'), f_ValParam($p_FichierIni, 'pwd_user_bdd'));
    	}
    	catch(PDOException $e)
    	{
    		die('Erreur : ' . $e->getMessage());
    	}
    Pour info, la fonction f_ValParam() retourne juste les valeurs des paramètres de mon fichier de configuration.

    Lorsque je regarde les extensions PHP activées via le menu de WampServer, php_pdo_oci est coché. Pourtant, lorsque je regarde les drivers PDO disponibles via phpinfo(), le driver oci n'apparaît pas.

    Pour info, les extensions PHP php_pdo_mysql et php_pdo_sqlite sont aussi activées dans le menu de WampServer et sont bien visibles dans la liste des drivers PDO retournée par le phpinfo(). Si je les décoche du menu de WampServer, elles disparaissent du rapport de phpinfo(). Si je les recoche, elles réapparaissent. Par contre, que php_pdo_oci soit coché ou pas, le driver oci n'est jamais retourné via le phpinfo().

    Quelqu'un saurait-il me dire pourquoi ? J'ai fait une recherche sur le forum mais n'ai pas trouvé la réponse.

    Merci d'avance pour votre aide et bonne fin de journée.

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    66
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 66
    Points : 56
    Points
    56
    Par défaut
    Bonjour,

    A toutes fins utiles, j'ai trouvé la source du dysfonctionnement. J'avais apparemment plusieurs problèmes combinés qui gênaient la reconnaissance du driver oci par WampServer 2.5 et/ou la création de mes connexions ODBC :

    - Le client Oracle installé sur mon PC par mon responsable architecture était trop ancien et le fichier oci.dll n'était pas compatible (problème pour OCI),
    - La variable d'environnement ORACLE_PATH n'existait pas. Il existait une ORACLE_HOME mais qui ne contenait pas la bonne valeur (problème pour ODBC),
    - La variable d'environnement TNS_ADMIN n'existait pas (problème pour ODBC).

    J'ai donc résolu mon problème comme suit :

    - J'ai désinstallé le client lourd Oracle 10.1.0.2.0 qui était sur mon poste.
    - Dans le doute, j'ai aussi désinstallé l'instantclient Oracle 10.2.0.5.0 qui était aussi présent sur mon poste.
    - Puis j'ai réinstallé un instantclient Oracle 10.2.0.5.0 32 bits (sur mon Windows 7 64 bits) avec les librairies ODBC complémentaires en suivant la procédure trouvée ici en remplaçant le client 11.2 par un 10.2.

    Le complément ODBC n'a évidemment rien à voir avec la non reconnaissance de mon driver oci mais j'ai besoin d'accéder à mes bases Oracle avec PHP via oci et avec Microsoft Access via ODBC.

    Et ça fonctionne.

    Bonne journée.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2016] Problème lors de la création d'une connexion avec un fichier Excel
    Par Handlordz dans le forum Excel
    Réponses: 0
    Dernier message: 11/02/2018, 16h31
  2. Réponses: 1
    Dernier message: 16/05/2015, 08h48
  3. [JSP] erreur lors d'une connexion à mySQL
    Par Jovial dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 31/08/2004, 16h48
  4. Réponses: 13
    Dernier message: 10/05/2004, 16h49
  5. Enlever la surbrillance lors d'une recherche avec vi
    Par sekiryou dans le forum Applications et environnements graphiques
    Réponses: 8
    Dernier message: 04/03/2004, 13h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo