Conexion Postgres desde PHP

En esta ocasión un pequeño ejemplo de como conectar PHP a Postgres, y les daré un resumen de cada función utilizadas en esta entrada:

1.- pg_connect : realiza la conexión hacia Postgres a través de una cadena compuesta por las credenciales de la base de datos.

2.- pg_query : recibe dos parámetros, el primero debe ser la conexión que abrimos con “pg_connect”, y el segundo una cadena compuesta por la consulta que queremos realizar a la base de datos.

3.- pg_fetch_assoc : esta función sirve para obtener los datos de una fila obtenidos de la consulta.

Bueno para realizar todo lo mencionado anteriormente deben tener instalada en su ambiente las librerías para que PHP trabaje con Postgres

Para obtener información del PHP instalado en su ambiente y librerías utilicen phpinfo();

En el caso de Linux Debian o versiones basadas pueden instalarla con el gestor de paquetes con:
“apt-get install php5-pgsql”

Y en el caso de windows deberán llevar a cabo la instalación de la siguiente DLL : libpq.dl

Para mayor información siempre visitar la documentación oficial : Instalación Postgres

Con esto marco mi regreso a la comunidad espero les guste y seguir aportando para ustedes.

CC BY-NC-ND 4.0 Conexion Postgres desde PHP by QualityInfoSolutions is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

You may also like...

2 Responses

  1. Juan Carlos Estrada Nieto dijo:

    Hola, muy buen aporte, estaba buscando algo así básico para hacer una aplicación sencilla, me sirvió y le agregué un par de cosas que ahora te comento. 1 – Cerrar la conexión después de cada consulta. 2 – Considera retornar algo que indique si la consulta fallo. 3 – Considera que responder cuando las consultas son de tipo insert, update o delete, ahora solo consideras las de tipo select, y por ello creas un array con los registros de la respuesta.

    class Conexion
    {

    public static function crearConexion()
    {

    $host = “localhost”;
    $puerto = “5432”;
    $usuario = “postgres”;
    $clave = “postgres”;
    $nombre_db = “ultron_espejo”;

    $conexion = pg_connect(” host=$host user=$usuario password=$clave port=$puerto dbname=$nombre_db “);

    if (!$conexion)
    {
    die (“Error, Problemas al conectar con el servidor”);
    }
    else
    {
    return $conexion;
    }

    }

    public static function consulta($sql=””)
    {
    $conexion = Conexion::crearConexion();
    $resultado = pg_query($conexion,$sql);//se ejecuta la consulta
    pg_close($conexion);//se cierra la conexión para que no quede idle

    $consulta_exitosa = $resultado ? 1 : 0;

    $filas = [];
    #Para obtener todos los datos debemos iterar en un ciclo, ya que contiene un puntero interno.
    while($row = pg_fetch_assoc($resultado))
    {
    $filas[] = $row;
    }

    //si no retornó filas es posible que haya fallado la consulta o sea de tipo update o delete
    //entonces solo se informa el éxito o fracaso de la ejecución de la consulta
    return count($filas) > 0 ? $filas : $consulta_exitosa;
    }

    }

Agregar un comentario

Su dirección de correo no se hará público. Los campos requeridos están marcados *

Contáctenos