Erro ao executar query() PostgreSQL

Enviada por Adenes Junior 
Adenes Junior
Erro ao executar query() PostgreSQL
05 de October de 2015 às 12:54PM
Olá turma, quando tento executar a linha: $stmt = $this->conexao->query($sql) e dou um refresh ou um post na pagina a pagina desaparece. Quando desativo a linha acima ela volta. Criei a seguinte classe PDO para acesso ao PostgreSQL:

class AcessarBase{
/**
* Conecta ao banco de dados
*
* @return object Retorna um objeto de conexao com o banco de dados
*/
public static function statusConexao($host, $porta, $usuario, $senha, $dbname){
try{
$conexao = new \PDO("pgsql:host=$host port=$porta dbname=$dbname user=$usuario password=$senha");
$conexao -> setAttribute(PDO::ATTR_ERRMODE, PDO:: ERRMODE_EXCEPTION);
return $conexao;
} catch(\PDOException $e){
return $error = "Não foi possível fazer a conexão com o banco de dados. Erro codigo: ".$e -> getCode()." Mesagem: ".$e -> getMessage();
}
}
}

Na classe ClienteDAO criei o seguinte método:

class ClienteDAO{
// conecta ao banco de dados
public $conexao = null;

/**
* propriedade responsável pelas mensagens de erro
* @var string
*/
public $erro = "";

function setCliente($nome, $email, $telefone, $senha){
$this->conexao = AcessarBase::statusConexao(HOST, PORTA, USUARIO, SENHA, BASE);

if ($this->conexao){

$sql = "SELECT email WHERE Usuario WHERE email='$email'";
$stmt = $this->conexao->query($sql);
$resultado = $stmt -> fetch(PDO::FETCH_OBJ);

if ($resultado){
$this->erro = "Já existe uma conta com esse email!";
return false;
} else {
$sql = "SELECT CadastrarUsuario($nome,$email,$telefone,$senha)";
$stmt = $this->conexao->query($sql);
return true;
}
} else {
$this->erro = "não conectado";
return false;
}
}

}

A conexão com o banco de dados é realizado com sucesso, porém a linha $stmt = $this->conexao->query($sql); faz com que a página desapareca. Como resolvber isso?
Adenes Junior
Re: Erro ao executar query() PostgreSQL
07 de October de 2015 às 11:36AM
Resolvido!
Você precisa estar logado no PHPBrasil.com para poder enviar mensagens para os nossos fóruns.

Faça o login aqui.