Para comenzar a trabajar con PDO y la base de datos Postgres (también conocida como PostgreSQL) en Windows es necesario habilitar la extensión de PDO Postgres, si no lo hacemos, aparecerá el siguiente error:
PHP Fatal error: Uncaught PDOException: could not find driver
Por ello es que vamos a ver cómo solucionar este problema en Windows con PHP.
Nota: si no tienes XAMPP mira aquí cómo se instala, y si no tienes PostgreSQL mira cómo se instala en este post.
Para habilitar la extensión simplemente hay que editar el archivo llamado php.ini que se encuentra en la ruta de XAMPP /php
Si instalaste XAMPP con las opciones por defecto el archivo se encuentra en C:\xampp\php\php.ini
En caso de que no lo encuentres, mira: Cómo localizar el archivo INI de PHP.
Una vez que localices el archivo busca la línea que dice:
;extension=pdo_pgsql
Si tiene un punto y coma al inicio es porque está comentada. Para habilitar la extensión de PostgreSQL PDO en PHP descomenta la línea de manera que quede así:
extension=pdo_pgsql
Como referencia aquí dejo una imagen de mi php.ini:
Por cierto, ahí también se ve que la extensión de SQLite está habilitada.
Ahora guarda los cambios del archivo y reinicia el servidor de Apache para que las extensiones sean recargadas.
Para reiniciar Apache abre el panel de control de XAMPP como administrador (se encuentra en C:\xampp\xampp-control.exe
)
Cuando la ventana se abre, haz click en el botón Stop de Apache, espera a que se detenga y luego haz click en Start.
Ahora podrás consumir una base de datos de PostgreSQL desde PHP usando el driver PDO. Te invito a leer más sobre PHP y sobre PostgreSQL.
Hoy te voy a presentar un creador de credenciales que acabo de programar y que…
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…
En este artículo te voy a enseñar cómo usar un "top level await" esperando a…
Esta web usa cookies.