Ser Programador

Como conectar a um banco de dados PostgreSql usando PHP?

Vamos ver como é simples fazer uma conexão com banco PostgreSql usando o PHP.



Diferente do comando para conexão com banco MySql onde passamos os parâmetros de conexão para o objeto mysqli, conectar-se a um banco PostgreSql exige que construamos uma string contendo os parâmetros de conexão com o banco, utilizando as palavras chave de cada parâmetro, e por fim que forneçamos essa string para a função pg_connect.



As palavras chave para a string de conexão são bastante sugestivas. Veja:


Vamos construir a string de conexão:

    	$host = 'localhost';
		$user = 'postgres_user';
		$password = '1234';
		$database = 'seu_banco';
        
        $connectionString = "host=$host user=$user password=$password dbname=$database";

    

A construção dessa string dispensa comentários. É tão simples quanto.


Vejamos então como se conectar utilizando a função pg_connect:

    	$host = 'localhost';
		$user = 'postgres_user';
		$password = '1234';
		$database = 'seu_banco';
        
        $connectionString = "host=$host user=$user password=$password dbname=$database";

        $pgConnection = @pg_connect($connectionString);
		
		if ($pgConnection) {
			echo 'Conectado com sucesso!';
		} else {
			echo 'Houve um erro ao se conectar!';
		}

    

Estamos usando um @ junto da função pg_connect, pois quando ocorre um erro de conexão, o PHP emite um warning. Esse @ suprime essa mensagem padrão de warning do PHP.

Tudo correndo bem com a conexão, a variável $pgConnection terá um dado do tipo resource pgsql link. Este resource deverá ser usado para efetuar suas queries, sendo fornecido como parâmetro.


O próprio PHP finaliza as conexões não persistentes abertas com o PostgreSql no fim da execução do script, porém você mesmo pode efetuar o fechamento das conexões utilizando:

    	pg_close($pgConnection);
    

Passando como parâmetro para a função pg_close a conexão a ser fechada.


Para saber mais sobre execução de queries no PostgreSql com PHP, CLIQUE AQUI para ler o artigo.