Edit function in CRUD in PHP (PDO) does not edit

Asked

Viewed 172 times

-3

<?php
include_once "conexao.php";

try {
	
	$id = filter_var($_POST['id'], FILTER_SANITIZE_NUMBER_INT);
	$codigoproduto = filter_var($_POST['codigoproduto']);
	$codigobarras = filter_var($_POST['codigobarras']);
	$nomeproduto = filter_var($_POST['nomeproduto']);
	$valorcusto = filter_var($_POST['valorcusto']);
	$valorvenda = filter_var($_POST['valorvenda']);
	$quantidadeatual = filter_var($_POST['quantidadeatual']);
	$minestoque = filter_var($_POST['minestoque']);
	$maxestoque = filter_var($_POST['maxestoque']);
	$validade = filter_var($_POST['validade']);
	$unidmedida = filter_var($_POST['unidmedida']);
	$ncm = filter_var($_POST['ncm']);
	$cest = filter_var($_POST['cest']);
	$pesoliquido = filter_var($_POST['pesoliquido']);
	$pesobruto = filter_var($_POST['pesobruto']);
	$fornecedor = filter_var($_POST['fornecedor']);
	
	$update = $conectar->prepare("UPDATE produtos SET codigoproduto = :codigoproduto, codigobarras = :codigobarras, nomeproduto = :nomeproduto, valorcusto = :valorcusto, valorvenda = :valorvenda, quantidadeatual = :quantidadeatual, minestoque = :minestoque, maxestoque = :maxestoque, validade = :validade, unidmedida = :unidmedida, ncm = :ncm, cest = :cest, pesoliquido = :pesoliquido, pesobruto = :pesobruto, fornecedor = :fornecedor WHERE id = :id");
	$update->bindParam(':id', $id);
	$update->bindParam(':codigoproduto', $codigoproduto);
	$update->bindParam(':codigobarras', $codigobarras);
	$update->bindParam(':valorcusto', $valorcusto);
	$update->bindParam(':valorvenda', $valorvenda);
	$update->bindParam(':quantidadeatual', $quantidadeatual);
	$update->bindParam(':minestoque', $minestoque);
	$update->bindParam(':maxestoque', $maxestoque);
	$update->bindParam(':validade', $validade);
	$update->bindParam(':unidmedida', $unidmedida);
	$update->bindParam(':ncm', $ncm);
	$update->bindParam(':cest', $cest);
	$update->bindParam(':pesoliquido', $pesoliquido);
	$update->bindParam(':pesobruto', $pesobruto);
	$update->bindParam(':fornecedor', $fornecedor);
	$update->execute();
	
	header("location: index.php");

} catch(PDOException $e){
	
	echo 'Erro: ' . $e->getMessage();
	
}

?>

<?php 

include_once "conexao.php";

	$id = filter_var($_GET['id'], FILTER_SANITIZE_NUMBER_INT);
	$consulta = $conectar->query("SELECT * FROM produtos where id = '$id'");
	$linha = $consulta->fetch(PDO::FETCH_ASSOC);
	
	?>
	
<form action="editar.php" method="POST">
				Código do Produto: <input type="text" id="codigoproduto" name="codigoproduto" value="<?php echo $linha['codigoproduto'] ?>"><br>
				Código de Barras: <input type="number" id="codigobarras" name="codigobarras" value="<?php echo $linha['codigobarras'] ?>"><br>
				Nome do Produto: <input type="text" id="nomeproduto" name="nomeproduto" value="<?php echo $linha['nomeproduto'] ?>"><br>
				Validade: <input type="date" id="validade" name="validade" value="<?php echo $linha['validade'] ?>"><br>
				Valor de Custo: <input type="number" id="valorcusto" name="valorcusto" value="<?php echo $linha['valorcusto'] ?>"><br>
				Valor de Venda: <input type="number" id="valorvenda" name="valorvenda" value="<?php echo $linha['valorvenda'] ?>"><br>
				Quantidade Atual: <input type="number" id="quantidadeatual" name="quantidadeatual" value="<?php echo $linha['quantidadeatual'] ?>"><br>
				Mín. em Estoque: <input type="number" id="minestoque" name="minestoque" value="<?php echo $linha['minestoque'] ?>"><br>
				Máx. em Estoque: <input type="number" id="maxestoque" name="maxestoque" value="<?php echo $linha['maxestoque'] ?>"><br>
				Unidade de Medida: <select id="unidmedida" name="unidmedida" value="<?php echo $linha['unidmedida'] ?>"><br>
					<option>Quantidade</option>
					<option>Kilograma</option>
				</select>
				NCM: <input type="number" id="ncm" name="ncm" value="<?php echo $linha['ncm'] ?>"><br>
				CEST: <input type="number" id="cest" name="cest" value="<?php echo $linha['cest'] ?>"><br>
				Peso Líquido: <input type="number" id="pesoliquido" name="pesoliquido" value="<?php echo $linha['pesoliquido'] ?>"><br>
				Peso Bruto: <input type="number" id="pesobruto" name="pesobruto" value="<?php echo $linha['pesobruto'] ?>"><br>
				Fornecedor: <input type="text" id="fornecedor" name="fornecedor" value="<?php echo $linha['fornecedor'] ?>"><br>

	<input type="hidden" name="id" id="id" value="<?php echo $linha['id'] ?>"/><br>
	<input type="submit" value="Editar"/><br>
</form>

<?php

try {

	// Faz conexão com o banco de dados
	$conectar = new PDO("mysql:host=localhost;port=3306;dbname=db;", "root", "");

} catch (PDOException $e) {

	// Caso ocorra algum erro na conexão com o banco de dados, exibe a mensagem
	echo 'Falha ao conectar com o banco de dados: ' . $e->getMessage();

}

  • 1

    Lots of code, little text. Please read the guide to [Ask].

  • Please explain what you want, complete your code with a text.

1 answer

1


$update->bindParam(':nomeproduto', $nomeproduto);

I think that’s missing

  • That’s right! THANK YOU

Browser other questions tagged

You are not signed in. Login or sign up in order to post.