Boa noite,
Esta dando o seguinte erro: Notice: Undefined index: usado in C:\xampp\htdocs\loja\adiciona-produto.php on line 11
Acontece somente quando eu coloco um produto que não é usado.
adiciona-produto.php
<?php
include("cabecalho.php");
include("banco-produto.php");
include("conecta.php");
$nome=$_POST["nome"];
$preco=$_POST["preco"];
$descricao=$_POST["descricao"];
$categoria_id=$_POST["categoria_id"];
$usado=$_POST["usado"];
echo 'teste';
echo $usado;
if(array_key_exists('usado', $_POST)) {
$usado = "true";
} else {
$usado = "false";
}
?>
<?php
if(insereProduto($conexao, $nome, $preco,$descricao,$categoria_id,$usado))
{
?>
<p class="text-success">Produto <?= $nome ?> adicionado com sucesso! Valor de <?= $preco ?>R$.</p>
<?php
}else
{
$msg = mysqli_error($conexao);
?>
<p class="alert-danger">Erro ao adicionar. Erro: <?= $msg ?> </p>
<?php
}
mysqli_close($conexao);
?>
<?php include("rodape.php") ?>
banco-produto.php
<?php
function insereProduto($conexao, $nome, $preco,$descricao,$categoria_id,$usado) {
$query = "insert into produtos (nome, preco,descricao,categoria_id,usado) values ('{$nome}', {$preco},'{$descricao}',{$categoria_id},{$usado})";
$resultadoDaInsercao = mysqli_query($conexao, $query);
return $resultadoDaInsercao;
}
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($retorno_consulta = mysqli_fetch_assoc($resultado)) {
array_push($produtos, $retorno_consulta);
}
return $produtos;
}
function removeProduto($conexao, $id) {
$query = "delete from produtos where id = {$id}";
return mysqli_query($conexao, $query);
}
produto-formulario.php
<?php
include("cabecalho.php");
include("conecta.php");
include("banco-categoria.php");
$vetor_categoria = listaCategoria($conexao);
?>
<h1>Formulário de cadastro</h1>
<form action="adiciona-produto.php" method="POST">
<table class="table">
<tr>
<td>Nome</td>
<td><input type="text" class="form-control" name="nome" /></td>
</tr>
<tr>
<td>Preço</td>
<td><input type="number" class="form-control" name="preco" /></td>
</tr>
<tr>
<td>Descrição</td>
<td><textarea name="descricao" class="form-control"></textarea></td>
</tr>
<tr>
<td>Categoria</td>
<td>
<select name="categoria_id" class="form-control">
<?php foreach ($vetor_categoria as $categoria) :?>
<option value=<?= $categoria['id'] ?> ><?= $categoria['nome'] ?></br>
<?php endforeach ?>
</select>
</td>
</tr>
<tr>
<td></td>
<td><input type="checkbox" name="usado" value="true" > Usado</td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Cadastrar" class="btn btn-primary" /></td>
</tr>
</table>
</form>
<?php include("rodape.php") ?>
Desde Já.
Obrigado.