Conectar una base de datos PostgreSQL con PHP y XAMPP


Un cliente y amigo me solicito hacerle un sistema en postgresql y como actualmente tengo windows 10 y xampp me gustaría explicarles como activar postgresql en windows 10 y xampp.

Les comento esto por que hace tiempo hice una Guia de PostgreSQL usando Linux y con Windows 10 hay cosas que cambian un poco.

Descargar e Instalar PostgreSQL en Windows

Para descargar postgreSQL debemos ir a la pagina oficial https://www.postgresql.org/download/ y descargar la version para windows, en mi caso yo seleccione la version 13.

Despues debemos ejecutar el instalador y seguir todos los pasos, siguiente, siguiente, etc…

Solo hay un paso intermedio en el que nos pregunta una contraseña, esta contraseña se usa para el usuario postgres por default, apartir del cual usaremos para crear mas usuarios.

Una vez instalado postgresql se ejecutara en forma de servicio en windows, para iniciar, detener usaremos el programa services.msc

Para abrir la consola de PostgreSQL en Windows 10 vamos a ir a la siguiente ubicación:

cd C:\Program Files\PostgreSQL\13\bin>

Despues ejecutar el siguiente comando:

psql -U postgres -h localhost

Después nos solicitara la contraseña que agregamos en la instalación y listo, para saber como crear tablas y mas les invito a leer la guía de postgresql que publique anteriormente.

Configurar XAMPP para PostgreSQL

XAMPP esta configurado nativamente para PHP+MySQL pero también contiene librerías para otro tipo de plugins y motores de base de datos, entre ellos postgresql, solo es necesario activarlo.

Para activar postgresql o mas bien los módulos de funciones para postgresql vamos a el archivo php.ini y le vamos a quitar los comentarios a las siguientes lineas o si las líneas no están entonces hay que agregarlas:

extension=pgsql
extension=pdo_pgsql

Una vez que ya tenemos esas líneas solo basta reiniciar el apache del xampp.

Funciones PHP para PostgreSQL

Al activar los módulos de pgsql y pdo_pgsql sera posible usar las funciones y drivers para acceder a bases de datos postgresql a continuación veremos algunas funciones basicas.

Les recuerdo ir al articulo anterior sobre la guía de postgresql para conocer los comandos de postgresql te invito a leer la guía de postgresql que publique anteriormente.

Conectar a la base de datos

Para conectarnos a la base de datos vamos a usar la función pg_connect de la siguiente manera.

$pgcon= pg_connect("host=localhost port=5432 dbname=nombrebd user=postgres password=tupassword");

Con esto ya podemos usar la variable $pgcon para hacer consultas.

Ejecutar consultas

Para ejecutar consultas se usa la funcion pg_query.

$query = pg_query($pgcon, "select * from usuario");

Como parametro lleva la conexion a la base de datos y la consulta SQL.

Si ejecutamos consultas tipo select es necesario asignar los resultados a una variable para despues ser usada por otra funcion como pg_fetch_array.

Recorrer datos

Para recorrer datos necesitamos el resultado de una consulta/query tipo select, como en el ejemplo de arriba.

La función pg_fetch_array($query) devuelve los resultados en forma de array por indices.

$data = pg_fetch_array($query);

La función pg_fetch_assoc($query) devuelve los resultados en forma de array asociativo.

$data = pg_fetch_assoc($query);

La función pg_fetch_object($query) devuelve los resultados en forma de objeto.

$data = pg_fetch_object($query);

Cerrar conexión a la bd

Para cerrar o terminar una conexión a la base de datos usamos la funcion pg_close.

pg_close($pgcon);

Y con esto terminamos esta sección sobre postgresql, a ustedes que tal les pareció?

Leave a comment