0 votes

installation de php et postgreSQL

Je ne peux pas résoudre ce problème. J'ai installé "php-5.2.10-win32-installer.msi" et "apache_2.2.11-win32-x86-no_ssl.msi", et "mysql-4.1.22-win32" sur mon XP. Quand j'essaie d'utiliser phpinfo pour imprimer le support de la base de données, je peux voir que mysql est là, mais pas pgsql. J'ai vérifié mon php.ini, il y a des entrées comme celles-ci :

[PHP_MYSQL]
extension=php_mysql.dll
[PHP_PGSQL]
extension=php_pgsql.dll

Je me demandais pourquoi MySQL est acceptable, mais pourquoi pas postgreSQL ?

Voici mon script php.

error_reporting(E_ALL | E_STRICT);

echo "connecting...<br>";        
echo 'php.ini: ', get_cfg_var('cfg_file_path')," <br/> ";
echo extension_loaded('pgsql') ? 'yes':'no'," <br/> ";
$pg = pg_connect("host=localhost user=postgres
        password=xx dbname=xx")
or die("Can't connect to database.");

echo "connected<br>";        
?>

Le résultat est :

connecting... php.ini: C:\Program Files\PHP\php.ini no 

Fatal error: Call to undefined function pg_connect() in E:\WebSite\index.php on line 19

J'ai vérifié mon php.ini, il a les entrées "dll" ci-dessus que j'ai mentionnées, s'il vous plaît aidez.

1voto

cletus Points 276888

Dans votre fichier php.ini, changez :

;extension=php_pdo_pgsql.dll

à

extension=php_pdo_pgsql.dll

et redémarrez Apache. Cela ajoute l'extension Postgres (elle est commentée par défaut).

Vérifiez également que vous éditez le bon fichier php.ini. Je ne suis pas familier avec la distribution que vous utilisez mais j'en ai vu qui avaient 2 ou même 3 fichiers php.ini flottant autour (par exemple un pour Apache, un pour CLI et un pour je ne sais quoi).

Dans XAMPP 1.7.2, il se trouve dans \xampp\php\php.ini .

0voto

Martin v. Löwis Points 61768

Vous avez également besoin d'une ligne

 extension=php_pgsql.dll

dans votre configuration pour utiliser Postgres en PHP.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X