Olá a todos.
Estou fazendo um trabalho aqui e começando a usar Orientação a Objetos com PHP então ainda não tenho plena certeza dos passos.
Achei na net muitos exemplos mas como existem várias maneiras queria saber a melhor forma de quem tem mais experiência.
Segue o código criado até o momento, classe SelectOrganizacao.class.php
<?php
/**
*
* Classe para Listar Organizações
* @autor Anderson de Oliveira
* @version 1.0
*
**/
class SelectOrganizacao
{
// campos da tabela
private $idOrg;
private $nmOrg;
private $statusOrg;
private $cad;
private $alt;
public function listarOrganizacoes()
{
// inclui a classe de conexão
require_once 'Database.class.php';
// atribui a instância de conexão na variável
$db = Conexao::getInstance();
// consulta que retorna
$query = $db->prepare("SELECT * FROM " . Conexao::getTabela('TB_ORGANIZACAO')."");
$query->execute();
$num_rows = count($query);
if ($num_rows > 0)
{
// escreve a consulta
foreach($query->fetchAll(PDO::FETCH_ASSOC) as $l)
{
$this->idOrg = $l['idOrg'];
$this->nmOrg = $l['nmOrg'];
$this->statusOrg = $l['statusOrg'];
$this->cad = $l['cad'];
$this->alt = $l['alt'];
$dados[]=array(
"idOrg"=>$this->idOrg,
"nmOrg"=>$this->nmOrg,
"statusOrg"=>$this->statusOrg,
"cad"=>$this->cad,
"alt"=>$this->alt
);
}
return $dados;
}
}
}
E no html:
<?php
include "class/SelectOrganizacao.class.php";
$p = new SelectOrganizacao();
$dados = $p->listarOrganizacoes();
foreach ($dados as $l)
{
echo $l['idOrg'].' - '.$l['nmOrg'].' - '.$l['statusOrg'].' - '.$l['cad'].' - '.$l['alt'].'<br/>';
}
?>
Funciona certinho. Minhas dúvidas:
- Sintaxe/uso correto, vícios ou forma errada de proceder;
- Em que eu poderia melhorar quanto a performance;
- Como eu faço para retornar no meu html o valor de "$num_rows" ou então dar um valor true (existem resultados) e false (não existem);
- Outras sugestões.
Desde já agradeço a todos, assim que forem me dando as dicas para melhorar ou eu fizer uma melhoria vou postando aqui.