Oi, tudo bem pessoal? Eu estou com erro que não consigo resolver.
( ! ) Notice: Undefined index: id in C:\wamp64\www\loja\produto-lista.php on line 26
A linha 26 é esta: a href="remove-produto.php?id=<?=$produto['id']?>" class="text-danger">remover
Se incluo o <?php include("remove-produto.php");?> na página aparece este erro: Fatal error: Cannot redeclare insereProduto() (previously declared in C:\wamp64\www\loja\banco-produto.php:3) in C:\wamp64\www\loja\banco-produto.php on line 6
Sou nova em PHP e não faço idéia do que está acontecendo. Gostaria da ajuda de vocês.
//Este é o arquivo da linha 26
<?php include("header.php"); ?>
<?php include("conecta.php"); ?>
<?php include("banco-produto.php");?>
<?php
if(array_key_exists("removido", $_GET) && $_GET["removido"]=="true"){
?>
<p class="alert-success">Produto removido com sucesso!</p>
<?php
}
?>
<table class="table table-striped table-bordered">
<?php
$produtos = listaProdutos($conexao);
foreach ($produtos as $produto):
?>
<tr>
<td><?= $produto['nome'] ?></td>
<td><?= $produto['preco'] ?></td>
<td>
<a href="remove-produto.php?id=<?=$produto['id']?>" class="text-danger">remover</a>
</td>
</tr>
<?php
endforeach
?>
</table>
<?php include("footer.php"); ?>
//Este é o código da página remove-produto
<?php
include("header.php");
include("conecta.php");
include("banco-produto.php");
?>
<?php
$id = $_GET['id'];
removeProduto($conexao, $id);
header("Location: produto-lista.php?removido=true");
die();
?>
<?php include("footer.php");?>
//código do banco-produto.php
<?php
function insereProduto($conexao, $nome, $preco){
$query = "insert into produtos(nome, preco) values ('{$nome}', {$preco})";
return mysqli_query($conexao, $query);
}
function listaProdutos($conexao){
$produtos = array();
$resultado = mysqli_query($conexao, "select * from produtos");
while($produto = mysqli_fetch_assoc($resultado)){
array_push($produtos, $produto);
}
return $produtos;
}
function removeProduto($conexao, $id){
$query = "delete from produtos where id = {$id}";
return mysqli_query($conexao, $query);
}