Problemas com Array - lista apenas o último registro
Pessoal,
Estou com um problema com um array que é carregado com dados de uma pesquisa no BD.
Já tentei de tudo aqui e ele sempre me mostra apenas o último valor, quando percorro para exibir na tela.
Alguém consegue enxergar algum erro:
public function pesquisar($textoPesquisa) {
try {
$query = "SELECT * FROM produto WHERE nome LIKE '%$textoPesquisa%' ORDER BY nome ASC";
$stmt = $this->_conexao->query($query);
foreach ($stmt as $linha) {
$this->_listaProdutos[] = $this->carregar($linha["id"]);
}
return $this->_listaProdutos;
}
catch (PDOException $ex) {
echo "Erro: " . $ex->getMessage();
}
}
public function carregar($id){
try{
$query = "SELECT * FROM produto WHERE id = :id";
$stmt = $this->_conexao->prepare($query);
$stmt->execute(array(':id' => $id));
$obj = $stmt->fetchObject();
$this->_produto->setId($obj->id);
$this->_produto->setNome($obj->nome);
$this->_produto->setDescricao($obj->descricao);
$this->_produto->setEstoqueMin($obj->estoque_min);
$this->_produto->setEstoqueMax($obj->estoque_max);
$this->_produto->setLocalizacao($obj->localizacao);
$this->_produto->setPerecivel($obj->perecivel);
$this->_produto->setAtivo($obj->ativo);
$this->_produto->setQtd($obj->qtd);
$this->_produto->setObs($obj->obs);
$this->_produto->setValorAtual($obj->valor_atual);
$this->_produto->setValorAnterior($obj->valor_anterior);
$this->_produto->setCustoMedio($obj->custo_medio);
$this->_produto->setUnidade($this->_unidadeDAO->carregar($obj->id_unidade));
$this->_produto->setSubCategoria($this->_categoriaDAO->carregar($obj->id_sub_categoria));
$this->_produto->setLote($obj->id_lote);
//$this->_produto->setLote($this->_loteDAO->carregar($obj->id_lote));
return $this->_produto;
}
catch (PDOException $ex){
echo "Erro: ".$ex->getMessage();
}
}
Quando estou dentro do foreach funciona corretamento, mas quando tento em outro arquivo percorrer o listaUsuario mostra apenas o ultimo registro.
Pessoal,
Agora ele não retorna mais nada, só carrega a primeira pesquisa que faço, depois não altera, se fizer outra pesquisa.
Discussão (7)
Carregando comentários...