Fórum Foreach com campos em branco utilizando PDO com SQL SERVER #612182
28/07/2020
0
Pessoal estou com uma dificuldade em exibir os dados do banco em tela, alguns campos vem preenchidos e outros em branco.
Já revisei as entidades DAO o objeto e o select no banco hospedado na "Amazon", não esta hospedado localmente.
Esta é o meu ProdutoDAO
Este é o Foreach
Quando rodo o select no banco pelo SQL Management Studio, este select funciona perfeito, me retorna os nomes e a categoria com o JOIN.
Já no browser a tabela é preenchida normalmente sem erros e os campos "Nome do Produto" e "Nome da Categoria" vem em branco.
Se puderem me dar alguma dica agradeço.
Já revisei as entidades DAO o objeto e o select no banco hospedado na "Amazon", não esta hospedado localmente.
Esta é o meu ProdutoDAO
public function listar()
{
$resultado = $this->select(
''SELECT ProdutoId,
pr_Nome,
pr_Custo,
pr_categoria,
pr_Venda,
pr_Estoque,
pr_Markup,
pr_Promo,
pr_mkPromo,
CategoriaDesc
FROM Produtos
INNER JOIN Categorias ON pr_categoria = CategoriaId
''
);
$dataSetProdutos = $resultado->fetchAll();
if($dataSetProdutos) {
$listaProdutos = [];
foreach($dataSetProdutos as $dataSetProduto) {
$Produto = new Produto();
$Produto->setId($dataSetProduto[''ProdutoId'']);
$Produto->setNome($dataSetProduto[''pr_Nome'']);
$Produto->setCusto($dataSetProduto[''pr_Custo'']);
$Produto->getCategoria()->setCategoriaDesc($dataSetProduto[''CategoriaDesc'']);
$Produto->setVenda($dataSetProduto[''pr_Venda'']);
$Produto->setEstoque($dataSetProduto[''pr_Estoque'']);
$Produto->setMarkup($dataSetProduto[''pr_Markup'']);
$Produto->setPromo($dataSetProduto[''pr_Promo'']);
$Produto->setMkPromo($dataSetProduto[''pr_mkPromo'']);
$listaProdutos[] = $Produto;
}
return $listaProdutos;
}
return false;
}
Este é o Foreach
<?php
foreach($viewVar[''listaProdutos''] as $produto) {
?>
<tr>
<td><?php echo $produto->getId(); ?></td>
<td><?php echo $produto->getNome(); ?></td>
<td><?php echo $produto->getCategoria()->getCategoriaDesc(); ?></td>
<td>R$ <?php echo $produto->getVenda(); ?></td>
<td><?php echo $produto->getEstoque(); ?></td>
<td><?php echo $produto->getMkPromo(); ?></td>
<td>
<a href="http://<?php echo APP_HOST; ?>/produto/edicao/<?php echo $produto->getId(); ?>" class="btn btn-info btn-sm">Editar</a>
<a href="http://<?php echo APP_HOST; ?>/produto/exclusao/<?php echo $produto->getId(); ?>" class="btn btn-danger btn-sm">Excluir</a>
</td>
</tr>
<?php
}
?>
Quando rodo o select no banco pelo SQL Management Studio, este select funciona perfeito, me retorna os nomes e a categoria com o JOIN.
Já no browser a tabela é preenchida normalmente sem erros e os campos "Nome do Produto" e "Nome da Categoria" vem em branco.
Se puderem me dar alguma dica agradeço.
Dovanir Junior
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)