Conectar PHP com PostgreSql

Vamos mostrar aqui como se conectar à um banco de dados PostgreSql.
Criando o arquivo con.clas.php (o .clas é apenas para identificarmos o arquivo como uma classe).
Class Conexao
{
protected $host = "localhost";
protected $usuario = "postgres";
protected $senha = "postgres";
protected $nomedb = "banco_de_dados";
protected $conexao = null;

function __construct(){} //método construtor

    #método que inicia conexao
    function open(){
        $this->conexao = @pg_connect("host=$this->host user=$this->usuario
        password=$this->senha dbname=$this->nomedb");
        return $this->conexao;
    }

    #método que encerra a conexao
    function close(){
        @pg_close($this->conexao);
    }

    #método verifica status da conexao
    function statusCon(){
        if(!$this->conexao){
        echo "O sistema não está conectado à  [$this->nomedb] em [$this->host].";   
            exit;
        }
        else{
            echo "O sistema está conectado à  [$this->nomedb] em [$this->host].";
        }
    }
}

?>

host = geralmente localhost ou seu ip
usuario = usuário do seu banco
senha = senha do usuário
nomedb = a base que deseja se conectar

* O método open(), faz a conexão propriamente dita e retorna o estado da conexao (true ou false), com isso podemos através do método statusCon() saber se a conexao está ativa ou não.
* O método close(), como você imaginou encerra a conexao chamando o método PHP pg_close();

Criando o arquivo index.php para testarmos a conexao
#incluindo a classe conexao (supondo estar no mesmo diretorio)
include(‘conexao.class.php’);

#instanciando o objeto
$minhaConexao = new Conexao();

#chamada ao metodo open que abra a conexao
$minhaConexao->open();

#verificando o status da conexao
$minhaConexao->statusCon();

#encerrando a conexao
$minhaConexao->close();

#verificando a conexao apos close();
$minhaConexao->statusCon();
?>
É isso pessoal, muito fácil usar o PHP e PostgreSql. Caso tenham dúdivas basta deixa uma pergunta..

Abraços

Comentários

  1. executando o código acima, não há o procedimento de fechar a conexão, ainda que o mesmo seja chamado. Temos a exibição de 2 echo indicando que estamos conectados. Por que?

    ResponderExcluir

Postar um comentário

Postagens mais visitadas