0
I have the class connected:
<?php
/*
* Constantes de parâmetros para configuração da conexão
*/
define('SGBD', 'mysql');
define('HOST', 'localhost');
define('DBNAME', 'db_blog');
define('CHARSET', 'utf8');
define('USER', 'root');
define('PASSWORD', '');
//define('SERVER', 'linux');
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;
}
}
And the class AncoDados:
<?php
class 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 ??? what should come here?
I am studying PHP7 and am layman and would like to know what I should put in the instruction Prepare to get a valid response from the database.
Thanks in advance for your attention
Thank you very much!!! it worked... it was exactly what I intended... to get the query return. thanks !!!!
– Francisco Nascimento
Mark the answer as accepted by clicking on Checkmark, please.
– juniorgarcia