Bom, tava implementando uma discrição para o meu projeto, coloquei alguma escrita na minha descrição,blz,adicionou o produto com sua descrição.No banco de dados,aparece que a Descricao esta NULL. Logo, quando eu fui listar, esperava no minimo um vazio, mas ocorre um erro que diz, "Notice: Undefined variable: descricao in C:\xampp\htdocs\Alura-Estilo\lista-produtos.php on line 48" . Quando eu vi isso, tentei remover o produto, mas não estava removendo o produto.
-----Codigo: adiciona-produto.php
function insereProduto($conexao, $nome, $preco) {
$query = "insert into produtos (nome, preco) values ('{$nome}', '{$preco}')";
return mysqli_query($conexao, $query);
}
$nome = $_POST['nome'];
$preco = $_POST['preco'];
$descricao = $_POST['descricao'];
//$conexao = mysqli_connect('localhost', 'root', '', 'bd_loja');
if(insereProduto($conexao, $nome, $preco)) { ?>
<p class="text-success">O produto <?= $nome; ?>, <?= $preco; ?> adicionado com sucesso!</p>
<?php } else {
$msg = mysqli_error($conexao);
?>
<p class="text-danger">O produto <?= $nome; ?> não foi adicionado: <?= $msg ?></p>
<?php
}
?>
---- Codigo: banco-produtos.php
//---------------LISTAR PRODUTOS--------------------------------------------
function listarProdutos($conexao)
{
$produtos = array();
$resposta = mysqli_query($conexao," SELECT * FROM produtos");
while($produto = mysqli_fetch_assoc($resposta))//Enquanto pegue todos da tabela tb_produtos
{
array_push($produtos,$produto) . "<br/>";
}
return $produtos;
}
//---------------INSERIR PRODUTOS--------------------------------------------
function inserirProdutos($conexao,$produtos,$produto)
{
$query = "INSERT INTO produtos(nome,preco,descricao) VALUES ( '{$nome}','{$preco}','{$descricao}')";
$resutadoInsercao = mysqli_query($conexao,$query);
return $resutadoInsercao;
}
//---------------REMOVER PRODUTOS--------------------------------------------
function removerProdutos($conexao,$id)
{
$query="DELETE FROM produtos WHERE id={$id}";
return mysqli_query($conexao,$query);
}
-----Codigo:listar-produto.php
<?php include("cabecalho.php");
include("conexao.php");
include("banco-produtos.php");
?>
<h1> Lista </h1>
<?php
$produtos = listarProdutos($conexao);
?>
<?php if(array_key_exists("removido", $_GET) && $_GET['removido']=='true')
{ ?>
<p class="alert-success">Produto apagado com sucesso.</p>
<?php } ?>
<!--Tabela----------------->
<table class="table">
<tr>
<th>Nome do Produto</th>
<th>Preço</th>
<th>Descrição</th>
<th>Excluir</th>
</tr>
</table>
<?php
foreach ($produtos as $produto)
{
?>
<table class="table table-striped table-bordered">
<tr>
<td><?= $produto['nome']?></td>
<td id="space"><?= $produto['preco']?></td>
<td><?= $descricao['descricao']?></td>
<td>
<a href = "remover-produto.php?id=<?=$produto['id']?>" class="text-danger">Remover</a>
</td>
</tr>
</table>
<!------------------------->
<?php
}
?>
---Codigo: remover-produto.php
<?php
$id = $_POST['id'];
removerProdutos($conexao,$id);
header("Location: lista-produtos.php?removido=true");
die();
?>
<h3 class="text-success"> Produto <?=$id?> removido !! </h3>
<?php
include("rodape.php");
?>