J'essaie de me connecter à PostgreSQL en utilisant le framework Codeigniter. Maintenant dans mon database.php
J'ai le code suivant :
$active_group = 'default';
$query_builder = TRUE;
$db['default'] = array(
'dsn' => '',
'hostname' => 'localhost',
'username' => 'postgres',
'password' => '',
'database' => 'fmsdb',
'dbdriver' => 'postgre',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT !== 'production'),
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);
Mais quand j'exécute mon site dans localhost, j'obtiens l'erreur de base de données suivante:
Une erreur PHP a été rencontrée
Gravité: avertissement
Message: pg_connect (): Impossible de se connecter au serveur PostgreSQL: impossible de se connecter au serveur: Autorisation refusée Le serveur s'exécute-t-il sur l'hôte "localhost" (:: 1) et accepte-t-il les connexions TCP/IP sur le port 5432? impossible de se connecter au serveur: Autorisation refusée Le serveur est-il exécuté sur l'hôte "localhost" (127.0.0.1) et accepte-t-il les connexions TCP/IP sur le port 5432?
Nom de fichier: postgre/postgre_driver.php
Numéro de ligne: 154
J'ai essayé de mettre cela dans mon fichier PostgreSQL.conf:
listen_addresses = '*'
Où vais-je mal?
Commencez par activer l'extension Postgresql
dans php.ini
extension=php_pgsql.dll
Vous pouvez également activer l'extension Postgresql
pour PDO.
extension=php_pdo_pgsql.dll
$db['default'] = array(
'port' => 5432, # Add
);
OR
$db['default'] = array(
'dsn' => 'pgsql:Host=localhost;port=5432;dbname=database_name',
'dbdriver' => 'pdo',
);
D'abord activer ces deux extensions
extension=php_pgsql.dll
extension=php_pdo_pgsql.dll