Solucionado (ver solução)
Solucionado
(ver solução)
6
respostas

Erro no Lista Produto

Estou com problemas no meu código ele lista os produtos do banco porem ao clicar em remover ele aparece a mensagem que o produto foi removido porem ele ainda continua na lista mesmo se atualizar a pagina e limpar os cache do navegador. e retornou um erro confira : Meu código:

ARQUIVO: BANCOPRODUTO.PHP


<?php
    function listaProduto($conexao) {
        $produtos = array();
        $resultado = mysqli_query($conexao, "select * from produtos");

        while($produto = mysqli_fetch_assoc($resultado)) {
            array_push($produtos, $produto);
        }
        return $produtos;
    }
function insereProduto($conexao,$nome,$preco){
    $query = "insert into produtos (nome, preco) values ('{$nome}', {$preco})";
    return  mysqli_query($conexao, $query); //Fução que retorna a conexao
}
function removeProduto($conexao, $id) {
    $query = "delete from produtos where id = {$id}";
    return mysqli_query($conexao, $query);
}

ARQUIVO: REMOVEPRODUTO.PHP

<?php 
include("cabecalho.php");
include("conecta.php");
include("bancoproduto.php");

$id = $_GET['id'];
removeProduto($conexao, $id);
?>

<p class="text-success">Produto <?=$id?> removido!</p>

<?php
include("adiciona-produto.php");
?>

DETALHES DO ERRO:

Fatal error: Cannot redeclare listaProduto() (previously declared in C:\xampp\htdocs\cursophp\bancoproduto.php:2) in C:\xampp\htdocs\cursophp\bancoproduto.php on line 10
6 respostas

Oi Victor tudo bem,

Vi que no final do remove.php você está fazendo include do adiciona-produto.php O que a gente quer aqui é só fazer o include do rodape.php

<?php
include("rodape.php");
?>

Boa tarde, Felipe. Eu coloquei o rodape.php no include conforme solicitado.

<?php
include("rodape.php");
?>

Porem o erro ainda não foi solucionado, agora não aparece mais a mensagem de erro, porem ao clicar para REMOVER um produto o mesmo continua na pagina, mesmo atualizando e apagando os cache do navegador.

Ao clicar em remover ele é redirecionado para a pagina remove-produto.php porem eu observei que ao ir para essa pagina ele não esta fazendo conforme a referencia abaixo :

<a href="remove-produto.php?id=<?php $produto["id"] ?>" class="text-danger">Remover</a>

Foi passado no HREF a referencia para a pagina remove-produto.php e passou o ID do produto que é para ser removido porem quando eu clico ele abre um link com uma pagina assim :

http://localhost/cursophp/remove-produto.php?id=

Ou seja o ID= está em branco e não esta pegando o ID do produto, será que ai que está o problema ?

solução!

Boa tarde, Já consegui resolver, Muito obrigado Para alguem do topico que esteja com a mesma duvida . o Erro realmente estava no que citei acima. Algoritmo com divergente:

<a href="remove-produto.php?id=<?php $produto["id"] ?>" class="text-danger">Remover</a>

O que foi feito :

<a href="remove-produto.php?id=<?= $produto['id'] ?>" class="text-danger">Remover</a>

Apenas alterei a referencia do ID (Produto) para Aspas Simples ' ', e para abrir o codigo PHP eu alterei de :

<?php $produto["id"] ?> 
Para    
<?= $produto['id'] ?>

Pode compartilhar o código do produto-lista.php aqui ?

A sim era o href que eu queria olhar mesmo rsrs.

Legal que arrumou, bons estudos !!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software