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

Erro ao alterar qualquer produto

Está apresentando esse erro abaixo:

Produto Pao não foi alterado:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where id = '2')' at line 1


<?php include("cabecalho.php");
include("conecta.php"); 
include("banco-produto.php");


$id= $_POST['id'];
$nome = $_POST['nome'];
$preco = $_POST['preco'];
$descricao = $_POST['descricao'];
$categoria_id = $_POST['categoria_id'];

if (array_key_exists('usado', $_POST)) {
    $usado= "true";

}else{
    $usado = "false";
}    



if (alteraProduto($conexao, $id, $nome, $preco, $descricao, $categoria_id, $usado)) { ?>
    <p class="text-success">Produto <?= $nome ?>, <?= $preco ?> foi alterado.</p>

<?php } else { 
    $msg = mysqli_error($conexao);

?>
    <p class="text-danger">Produto <?= $nome ?> não foi alterado:<?=$msg?></p>

<?php
}
?>




<?php include ("rodape.php");?>
2 respostas
solução!

Verifique a sua query no banco-produto.php, nela que se encontra o problema.

Como você não postou o código do banco-produto.php, não posso afirmar ao certo o problema, mas pela mensagem de erro, o problema pode estar no seu where.

Pelo trecho do erro 'where id = '2')' parece que você está colocando aspas no número do id, utilizamos aspas somente para strings, no caso de numerais não se deve usar aspas. então a sua condição deve ficar assim where id = 2.

problema resolvido!

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