Bom dia senhores , por favor vocês que já fizeram o curso , tem como me ajudar aqui.. estou com uma duvida , depois que encapsulei os campos o meu produto adiciona , mais não lista. na lista dos produtos adicionados.
Att
Segue os códigos do adiciona e lista produtos.
-- adiciona Produto --
<?php require_once("cabecalho.php");?> <?php require_once("logica-usuario.php");?> <?php require_once("conecta.php"); require_once("class/Produto.php"); require_once("class/Categoria.php"); verificaUsuario(); ?>
<?php $produto = new Produto; $categoria = new Categoria;
$categoria->setId($_GET['categoria_id']);
$produto->setId($_GET['id']); $produto->setNome($_GET['nome']); $produto->setPreco($_GET['preco']); $produto->setDescricao($_GET['descricao']); $produto->setCategoria($categoria);
?>
<?php
function insereProduto($conexao, Produto $produto){ $query = "insert into produtos (nome, preco,descricao,categoria_id) values ('{$produto->getNome()}', {$produto->getPreco()},'{$produto->getDescricao()}','{$produto->getCategoria()->getId()}')"; $resultadoDaInsercao = mysqli_query($conexao, $query); return $resultadoDaInsercao; } ?> <?php
if(insereProduto($conexao,$produto)){ ?>
Produto <?= $produto->getNome(); ?> Preço <?= $produto->getPreco(); ?> adicionado com sucesso!
<?php } else{ $msg = mysqli_error($conexao); ?>
Produto <?= $produto->getNome(); ?>, <?= $produto->getPreco(); ?> nao foi adicionado: <?= $msg ?>
<?php } ?>
<?php require_once("rodape.php"); ?>
-- produto lista--
<?php require_once("cabecalho.php"); ?> <?php require_once("banco-produto.php");?> <?php require_once("logica-usuario.php"); require_once("class/Produto.php"); require_once("class/Categoria.php"); verificaUsuario(); if(isset($_SESSION["success"])) { ?>
<?= $_SESSION["success"]?>
<?php unset($_SESSION["success"]); } ?><?php $produtos = listaProdutos($conexao); ?>
<?php if(array_key_exists("removido", $_GET) && $_GET['removido']=='true') { ?>
Produto apagado com sucesso.
<?php } ?><?php
foreach ($produtos as $produto) : ?>
<?php endforeach ?>
<?php include("rodape.php"); ?>
-- Banco produto --
<?php include("conecta.php"); require_once("class/Produto.php"); require_once("class/Categoria.php"); function listaProdutos($conexao) { $produtos = array(); $resultado = mysqli_query($conexao, "select p.*, c.nome as categoria_nome from produtos as p join categorias as c on p.categoria_id = c.id"); while($produto_atual = mysqli_fetch_assoc($resultado)) { $produto = new Produto; $categoria= new Categoria; $categoria->setNome($produto_atual['categoria_nome']); $produto->setId($produto_atual['id']); $produto->setNome($produto_atual['nome']); $produto->setPreco($produto_atual['preco']); $produto->setDescricao($produto_atual['descricao']); $produto->setCategoria($categoria);
array_push($produtos, $produto); }
return $produtos;
}
function insereProduto($conexao, Produto $produto) { $query = "insert into produtos (nome, preco, descricao, categoria_id) values ('{$produto->nome}', {$produto->getPreco()}, '{$produto->descricao}', {$produto->categoria->id})"; $resultadoDaInsercao = mysqli_query($conexao, $query); }
function removeProduto($conexao,$id){
$query= "delete from produtos where id={$id}"; return mysqli_query($conexao,$query);
}
function buscaProduto($conexao,$id){ $query ="select * from produtos where id={$id}"; $resultado = mysqli_query($conexao,$query); return mysqli_fetch_assoc($resultado);
}
function alteraProduto($conexao,Produto $produto){
$query = "update produtos set nome = '{$produto->setNome($nome)}', preco = {$produto->setPreco($preco)}, descricao = '{$produto->setDescricao($descricao)}', categoria_id= {$produto->setCategoria_id($categoria)} where id = '{$produto->setId($id)}'"; return mysqli_query($conexao, $query);
}