3
I’m trying to use ON DUPLICATE KEY UPDATE
in my query and for some reason it’s not working.
I withdraw the ID
and no use ON DUPLICATE KEY UPDATE
: values are saved in a new line in the database.
Example:
$sql = "INSERT INTO estoque ( cod_produto, dsc_produto, preco_produto, qtd_estoque, qtd_limitador) VALUES ('".$cod_produto."', '".$dsc_produto."', '".$preco_produto."', '".$qtd_estoque."', '".$qtd_limitador."');
Faulty code:
if (isset($_POST["submit"])) {
$id = $_GET[id];
$cod_produto = $_POST['cod_produto'];
$dsc_produto = $_POST['dsc_produto'];
$preco_produto = $_POST['preco_produto'];
$qtd_estoque = $_POST['qtd_estoque'];
$qtd_limitador = $_POST['qtd_limitador'];
$sql = "INSERT INTO estoque (id, cod_produto, dsc_produto, preco_produto, qtd_estoque, qtd_limitador) VALUES ('".$id."','".$cod_produto."', '".$dsc_produto."', '".$preco_produto."', '".$qtd_estoque."', '".$qtd_limitador."') ON DUPLICATE KEY UPDATE (cod_produto=$cod_produto, dsc_produto=$dsc_produto)";
$mysql = mysqli_query($conexao,$sql);
if (!mysql) {
die('Error: ' . mysqli_error());
}
else {
echo "Feito";
}
echo $id;
}
Shows no error, just do not save any value in the bank.
Take a look at this article, it exemplifies the use of ON DUPLICATE KEY UPDATE I had the same problem solved with this article. Good luck http://blog.glaucocustodio.com/2012/10/26/actualizr-registro-existi-senao-inserir-no-mysql-com-on-duplicate-key-update/ See documentation also if necessary https://dev.mysql.com/docrefman/5.0/en/insert-duplicate.html.
– Jerfeson Guerreiro