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

PHP & Base de données Discussion :

PDO ne trouve pas le pilote pour PostgreSql [PDO]


Sujet :

PHP & Base de données

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    150
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 150
    Points : 157
    Points
    157
    Par défaut PDO ne trouve pas le pilote pour PostgreSql
    Bonjour,

    Je rencontre un problème avec le pilote PDO, je suis sous Mac OS X Maverick et ce dernier me renvoi l'erreur suivante :
    Fatal error: Uncaught exception 'PDOException' with message 'could not find driver'
    Pourtant mes extensions sont bien actives :
    extension=php_mysql.dll
    extension=php_mysqli.dll
    extension=php_pdo_mysql.dll
    extension=php_pdo_pgsql.dll
    extension=php_pgsql.dll
    Il faut savoir que le problème est présent lorsque j'essaye de passé par PostgreSql,ce souci n'est pas présent avec MySql.

    Je ne sais pas ou sont présents les extensions sous mac, j'ai uniquement trouver ce chemin :
    /usr/lib/php/extensions/no-debug-non-zts-20100525
    Il compte qu'un unique fichier dont le nom est xdebug.so.

    Enfin, le rendu de phpinfo() n'affiche nul part postgreSql, la catégorie PDO parle uniquement de mysql & mysqli.

    PostgreSql à été installer via PostgreSql.app présent sur le site officiel. J'utilise PHP5 et Apache présent par défaut avec le système.

    Merci pour votre aide.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    dans ton phpinfo tu dois avoir le chemin des extensions.
    Verifie au passage que le php.ini utilisé est bien celui que tu regardes car si l'extension était demandée dans le php.ini et qu'elle n'est pas présente dans le phpinfo() au final, tu aurais des erreurs entre les deux.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    150
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 150
    Points : 157
    Points
    157
    Par défaut
    D'après mon phpinfo(),
    extension_dir vaut : /usr/lib/php/extensions/no-debug-non-zts-20100525
    Loaded Configuration File : /etc/php.ini
    Cela correspond bien à mon architecture...

    Pour modifier la section Configure Command du phpinfo dois-je forcément (re)compilé php ?

    Est-ce prudent(possible?) de mettre à jour la version de apache et PHP livré avec Mac OS X ? J'entend par là, est ce qu'une mise a jour du système ( par Apple ) ne compromettrai pas la mise à jour manuel que j'aurai faîte ?

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    150
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 150
    Points : 157
    Points
    157
    Par défaut
    J'ai remarqué que configure command ne comporte pas d'option parlant de postgreSql, pensez vous que ça peut être la cause du problème ?

    '/private/var/tmp/apache_mod_php/apache_mod_php-87.2~1/php/configure' '--prefix=/usr' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--disable-dependency-tracking' '--sysconfdir=/private/etc' '--with-apxs2=/usr/sbin/apxs' '--enable-cli' '--with-config-file-path=/etc' '--with-config-file-scan-dir=/Library/Server/Web/Config/php' '--with-libxml-dir=/usr' '--with-openssl=/usr' '--with-kerberos=/usr' '--with-zlib=/usr' '--enable-bcmath' '--with-bz2=/usr' '--enable-calendar' '--disable-cgi' '--with-curl=/usr' '--enable-dba' '--enable-ndbm=/usr' '--enable-exif' '--enable-fpm' '--enable-ftp' '--with-gd' '--with-freetype-dir=/BinaryCache/apache_mod_php/apache_mod_php-87.2~1/Root/usr/local' '--with-jpeg-dir=/BinaryCache/apache_mod_php/apache_mod_php-87.2~1/Root/usr/local' '--with-png-dir=/BinaryCache/apache_mod_php/apache_mod_php-87.2~1/Root/usr/local' '--enable-gd-native-ttf' '--with-icu-dir=/usr' '--with-ldap=/usr' '--with-ldap-sasl=/usr' '--with-libedit=/usr' '--enable-mbstring' '--enable-mbregex' '--with-mysql=mysqlnd' '--with-mysqli=mysqlnd' '--without-pear' '--with-pdo-mysql=mysqlnd' '--with-mysql-sock=/var/mysql/mysql.sock' '--with-readline=/usr' '--enable-shmop' '--with-snmp=/usr' '--enable-soap' '--enable-sockets' '--enable-sqlite-utf8' '--enable-sysvmsg' '--enable-sysvsem' '--enable-sysvshm' '--with-tidy' '--enable-wddx' '--with-xmlrpc' '--with-iconv-dir=/usr' '--with-xsl=/usr' '--enable-zend-multibyte' '--enable-zip' '--with-pcre-regex=/usr'

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    150
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 150
    Points : 157
    Points
    157
    Par défaut
    Bonsoir,

    Dans le "Configure Command" de phpinfo, il vous manque --with-pgsql et --with-pdo-pgsql.

    Si vous voulez utiliser PostgreSql.app il vaut que vous indiquez cela à php : --with-pgsql[=DIR] ou Dir représente le chemin qui mène au répertoire : /Applications/Postgres.app/Contents/Versions/9.3/bin (le chemin est à confirmer, les fichier qui s'y trouve sont entre autres pg_config etc...)
    Pour plus de détails, regarder ici. Des connaissances minimales en compilation sont nécessaires (compilateur C - Make).

    Je vous conseil de passer par un package comme EnterpriseDB qui, facilement vous montre un environnement d'autant plus si votre serveur de production n'est pas Mac OS X (généralement Linux).
    D'autres solutions existent en passant par MacPort par exemple.

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    150
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 150
    Points : 157
    Points
    157
    Par défaut
    Merci BooMan !

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

Discussions similaires

  1. Je ne trouve pas l'option pour changer l'âge dans le profil
    Par Marc22 dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 5
    Dernier message: 17/05/2010, 11h05
  2. [Snow Leopard] MAC OS ne trouve pas l'appli pour ouvrir un dossier !
    Par The Goion dans le forum Apple
    Réponses: 4
    Dernier message: 25/09/2009, 17h10
  3. Win Vista: pas de Pilote pour Scanneur HP scanjet 4470c
    Par MelkInarian dans le forum Windows Vista
    Réponses: 9
    Dernier message: 18/10/2008, 15h06
  4. Le pilote pour PostgreSQL
    Par Soundscape dans le forum Bases de données
    Réponses: 10
    Dernier message: 30/10/2006, 20h49
  5. Je ne trouve pas la requete pour modifier les entrées...
    Par guttts dans le forum Langage SQL
    Réponses: 7
    Dernier message: 24/08/2005, 19h17

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