A categoria nao vem mais com os dados no banco Alguem pode me ajudar?
Segue os codigos:
Altera Produto
<?php require_once("cabecalho.php");
require_once("banco-produto.php");
//importando a classe produto
require_once("class/Produto.php");
require_once("class/Categoria.php");
//instanciando um Produto
$produto = new Produto();
$categoria = new Categoria();
$categoria->setId($_POST['categoria_id']);
$produto->setId($_POST['id']);
$produto->setNome($_POST['nome']);
$produto->setPreco($_POST['preco']);
$produto->setDescricao($_POST['descricao']);
$produto->setCategoria($categoria);
if(array_key_exists('usado', $_POST)) {
$produto->setUsado("true");
} else {
$produto->setUsado("false");
}
if(alteraProduto($conexao, $produto)) { ?>
<p class="text-success">O produto <?= $produto->getNome() ?>,
<?= $produto->getPreco() ?> foi alterado.</p>
<?php } else {
$msg = mysqli_error($conexao);
?>
<p class="text-danger">O produto <?= $produto->getNome() ?>
não foi alterado: <?= $msg?></p>
<?php
}
?>
<?php include("rodape.php"); ?>
Banco Categoria
<?php
require_once("conecta.php");
require_once("class/Categoria.php");
function listaCategorias($conexao) {
$categorias = array();
$query = "select * from categoria";
$resultado = mysqli_query($conexao, $query);
while($categoria_array = mysqli_fetch_assoc($resultado)) {
$categoria = new Categoria();
$categoria->setId($categoria_array['id']);
$categoria->setNome($categoria_array['nome']);
array_push($categorias, $categoria);
}
return $categorias;
}
Banco Produto
<?php
require_once("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 categoria as c on c.id=p.categoria_id");
// essa vaiavel percorre no banco e paga os valores do produto
while($produto_array = mysqli_fetch_assoc($resultado)) {
$categoria = new Categoria();
$categoria->setNome($produto_array['categoria_nome']);
// instancia um produto
// depois produto recebe os valores que percorreu no array
$produto = new Produto();
$produto->setId($produto_array['id']);
$produto ->setNome($produto_array['nome']);
$produto ->setPreco($produto_array['preco']);
$produto ->setDescricao($produto_array['descricao']);
$produto ->setCategoria($categoria);
$produto ->setUsado($produto_array['usado']);
array_push($produtos, $produto);
}
return $produtos;
}
function insereProduto($conexao, Produto $produto) {
$query = "insert into produtos (nome, preco, descricao,
categoria_id, usado) values ('{$produto->getNome()}',
{$produto->getPreco()}, '{$produto->getDescricao()}', {$produto->getCategoria()->getId()},
{$produto->getUsado()})";
return mysqli_query($conexao, $query);
}
function alteraProduto($conexao, Produto $produto) {
$query = "update produtos set nome = '{$produto->getNome()}',
preco = {$produto->getPreco()},
descricao = '{$produto->getDescricao()}', categoria_id= {$produto->getCategoria()->getId()},
usado = {$produto->getUsado()} where id = '{$produto->getId()}'";
return mysqli_query($conexao, $query);
}
function buscaProduto($conexao, $id) {
$query = "select * from produtos where id = {$id}";
$resultado = mysqli_query($conexao, $query);
$produto_buscado = mysqli_fetch_assoc($resultado);
$categoria = new Categoria();
$categoria->setId($produto_buscado['categoria_id']);
$produto = new Produto();
$produto->setId($produto_buscado['id']);
$produto->setNome($produto_buscado['nome']);
$produto->setDescricao($produto_buscado['descricao']);
$produto->setCategoria($categoria);
$produto->setPreco($produto_buscado['preco']);
$produto->setUsado($produto_buscado['usado']);
return $produto;
}
function removeProduto($conexao, $id) {
$query = "delete from produtos where id = {$id}";
return