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

minha aplicação não esta mostrando a mensagem de deleção

alguém pode me ajudar, pois quando eu deleto um produto ele não esta mostrando a mensagem de deleção

meu código do produto-lista.php:

<?php include("cabecalho.php"); 
include("conecta.php");
include("banco-produto.php");
include("banco-categoria.php");
?>
<?php
    if(array_key_exists("removido", $_GET) && $_GET["removido"] == "true"){
?>    
    <p class="alert-success">Produto Apagado com Sucesso</p>
<?php
    }
?>    

<table class="table table-striped table-bordered"> <!-- fizemos uma tabela para os produtos  --> 
    <?php
    $produtos = listaProdutos($conexao);
    foreach ($produtos as $produto) :  // para cada um desses produtos chama de produto?>

        <tr>
            <td><?= $produto['nome']?></td>
            <td><?= $produto['preco']?></td>
            <td><?= substr($produto['descricao'], 0,40)?></td>
            <td><?= $produto['categoria_nome']?></td>
             <td><a class="btn btn-primary" href="produto-altera-formulario.php?id=<?=$produto['id']?>">alterar</a>

            <td>
                <form action="remove-produto.php" method="post">
                    <input type="hidden" name="id" value="<?=$produto['id']?>"/>
                    <button class="btn btn-danger"> remover</button>
                </form>
            </td>
        </tr>

    <?php            
      endforeach 
    ?>

</table>

<?php include ("cabecalho.php") ?>

e remove-produto.php:

<?php include("cabecalho.php"); 
include("conecta.php");
include("banco-produto.php");
?>
<?php
$id = $_POST['id'];
removeProduto($conexao, $id);
header("Location: produto-lista.php?removido = true");
die();


?>

Já até troquei os POST por GET mas não funcionou naminha URI ta passando issohttp://localhost/loja/loja/produto-lista.php?removido%20=%20true não sei porque esta passando esse %20=%20

2 respostas
solução!

Oi Fabio, tudo bom?

o %20 é a representação do caracater se espaço na sua URI, tenta eliminar estes espaços.

Tenta verificar o que está dentro do seu $_GET["removido"] com o comando var_dump e mostra pra gente? Algo como:

<?php include("cabecalho.php"); 
include("conecta.php");
include("banco-produto.php");
include("banco-categoria.php");
?>
<?php
var_dump($_GET["removido"]);
die();
// resto do arquivo

deu certo aqui André obrigado!

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