1
resposta

UPDATE ALTERAR

Meu campo de UPDATE está pegando as informações do produto e o ID na pagina Altera-form.php tudo certinho. Porem ao clicar no botão para alterar ele me retorna esse erro:

Notice: Undefined index: id in C:\xampp\htdocs\PSICOLOGIA\pages\altera-produto.php on line 4

Notice: Undefined index: descricaobreve in C:\xampp\htdocs\PSICOLOGIA\pages\altera-produto.php on line 5

Notice: Undefined index: descricaolonga in C:\xampp\htdocs\PSICOLOGIA\pages\altera-produto.php on line 6
Tente novamente

Meus arquivos: (Coloquei escrito LINHA 4,5,6 no codigo para mostrar onde está apresentando erro, não que isso esteja rodando no meu codigo.)

Altera-Produto.php :

<?php include '../database/conecta.php';
include 'banco-produto.php';

LINHA4 $id = $_POST['id'];
LINHA5 $descricaobreve = $_POST['descricaobreve'];
LINHA6 $descricaolonga = $_POST['descricaolonga'];

if(alteraProduto($conexao, $id, $descricaobreve, $descricaolonga)) {?>
    <p class="text-success"> Produto <?= $descricaobreve ?> Alterado</p>
<?php } else {
    $msg = mysqli_error($conexao);
    ?>
    <p class="text-danger">Tente novamente</p>
<?php 
}
?>

BANCO-PRODUTO.PHP

function alteraProduto($conexao, $id, $descricaobreve, $descricaolonga){
        $query = "update paginainicio set descricaobreve='{$descricaobreve}', 
        descricaolonga = '{$descricaolonga}',
         where id='{$id}'";
        return mysqli_query($conexao, $query);
        }

PRODUTO-ALTERA-FORMULARIO:

 <?php require_once ("../database/conecta.php"); 
    require_once ("../pages/banco-produto.php"); 


    $id = 0;
if (isset($_GET['id'])){
     $id = $_GET['id'];
}
 $produto = buscaProduto($conexao, $id);

    ?>


<div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-12">
 <div class="card">
<h5 class="card-header">Alterar Inforações</h5>
<div class="card-body">

<form action="altera-produto.php" >
    <input type="hidden" name="id" value="<?=$produto['id']?>">
    <div class="form-group row">
    <label class="col-12 col-sm-3 col-form-label text-sm-right">Descrição Breve</label>
    <div class="col-12 col-sm-8 col-lg-6">
    <input type="text" name="descricaobreve" value="<?=$produto['descricaobreve']?>"  class="form-control">
</div>
</div>

<div class="form-group row">
    <label class="col-12 col-sm-3 col-form-label text-sm-right">Descrição Longa</label>
<div class="col-12 col-sm-8 col-lg-6">
    <input type="text" name="descricaobreve" value="<?=$produto['descricaolonga']?>"  class="form-control">
</div>
     <button  class="btn btn-space btn-primary alert-vel"  type="submit" >Alterar</button>
</div>
1 resposta

Oi Victor, tudo bem? O erro indica que ele não tá encontrando os índices no array $POST, você lembra em que momento o array $POST está disponível? O form é quem deve indicar, correto? Seus dados estão sendo enviados via GET ou via POST?

:)

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