Tenho a classe conexao:
class conexao {
/* * Atributo estático de conexão */ private static $ pdo; /* * Escondendo o construtor da classe */ private function __construct() { // } /* * Método privado para verificar se a extensão PDO do banco de dados escolhido * está habilitada */ private static function verificaExtensao() { switch(SGBD): case 'mysql': $ extensao = 'pdo_mysql'; break; case 'mssql':{ if(SERVER == 'linux'): $ extensao = 'pdo_dblib'; else: $ extensao = 'pdo_sqlsrv'; endif; break; } case 'postgre': $ extensao = 'pdo_pgsql'; break; endswitch; if(!extension_loaded($ extensao)): echo "<h1>Extensão {$ extensao} não habilitada!</h1>"; exit(); endif; } /* * Método estático para retornar uma conexão válida * Verifica se já existe uma instância da conexão, caso não, configura uma nova conexão */ public static function getInstance() { self::verificaExtensao(); if (!isset(self::$ pdo)) { try { $ opcoes = array(\PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8'); switch (SGBD) : case 'mysql': self::$ pdo = new \PDO("mysql:host=" . HOST . "; dbname=" . DBNAME . ";", USER, PASSWORD, $ opcoes); break; case 'mssql':{ if(SERVER == 'linux'): self::$ pdo = new \PDO("dblib:host=" . HOST . "; database=" . DBNAME . ";", USER, PASSWORD, $ opcoes); else: self::$ pdo = new \PDO("sqlsrv:server=" . HOST . "; database=" . DBNAME . ";", USER, PASSWORD, $ opcoes); endif; break; } case 'postgre': self::$ pdo = new \PDO("pgsql:host=" . HOST . "; dbname=" . DBNAME . ";", USER, PASSWORD, $ opcoes); break; endswitch; self::$ pdo->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION); } catch (PDOException $ e) { print "Erro: " . $ e->getMessage(); } } return self::$ pdo; } public static function isConectado(){ if(self::$ pdo): return true; else: return false; endif; }
}
e a classe classBancoDados:
{ protected $ ComandoSQL;
// Construtor Function __construct() { $ this->setComandoSQL(); } //Métodos Públicos public function getComandoSQL() { return $ this->ComandoSQL; } public function setComandoSQL($ ComandoSQL) { $ this->ComandoSQL = $ ComandoSQL; } public function SetSELECT($ Campos = "", $ Tabela = "", $ CampoOrdenacao = "", $ Ordem = "") { if(($ Campos != "") && ($ Tabela != "")) { $ this->ComandoSQL = "SELECT " . $ Campos . " FROM " . $ Tabela; if($ Ordem != "") { $ this->ComandoSQL .= " ORDDER BY "; $ this->ComandoSQL .= $ CampoOrdenacao; } } } } /* $ sql = 'SELECT UF, Cidade, Endereco, Numero, Bairro, Telefone FROM hoteis'; $ rs = $ conexao->prepare($ sql); $ rs->execute(); */ $ conexao_db = new classBancoDados(); $ conexao_db->SetSELECT("*", "hotei","UF, Cidade"); $ conexao = conexao::getInstance(); $ ResultSet = $ conexao->prepare(*** O que deve vir aqui?); $ registros = $ ResultSet->fetchAll(PDO::FETCH_OBJ);
echo ??? (o que deve vir aqui?
Estou estudando PHP7 e sou leigo e gostaria de saber o que devo colocar na instrução Prepare para obter uma resposta válida do do banco de dados.
Obrigado desde já pela atenção