Olá pessoal, estou precisando de uma ajudinha....
estou fazendo um script para importar produtos para o banco de dados a partir do xml...
só que.... alguns produtos já estão cadastrados. o que eu queria fazer era o seguinte...
quando o usuario for cadastrar o xml e os produts que já estiverem cadastrado cm o mesmo código de barras
seja apenas atualizado! como faç isso já tentei de várias maneiras....
ajudem ai por favor! segue abaixo o código que recebe e faz as gravações!
Detalhe, grava perfeitamente, só não consegui colcar uma condição que fizesse essa lógica!
<?php
session_start();
require '../../includes/connect.php';
//$sql = "INSERT INTO produtos (cProd, nProd, un, estoque, vlVenda, ncm, vlCompra, pICMS, perc_ipi) VALUES ";
$grava = "INSERT INTO produtos (cProd, cBarras, nProd, un, estoque, vlVenda, ncm, vlCompra, pICMS, perc_ipi) VALUES ";
$verifica = "";
$atualiza = "";
for( $i=0; $i<count($_POST['item']); $i++ )
{
$codigo = $_POST['codigo'][$i];
$cBarras = $_POST['cEAN'][$i];
$nProd = $_POST['xProd'][$i];
$ncm = $_POST['NCM'][$i];
$un = $_POST['uCom'][$i];
$esto = $_POST['qCom'][$i];
$estoque = str_replace(",", ".", $esto);
$vlC = $_POST['vUnCom'][$i];
$vlCompra = str_replace(",", ".", $vlC);
$vlV = $_POST['vVenda'][$i];
$vlVenda = str_replace(",", ".", $vlV);
$pICMS = $_POST['pICMS'][$i];
$perc_ipi = $_POST['perc_ipi'][$i];
$verifica .= "SELECT * FROM `produtos` WHERE `cBarras` = '$cBarras'; ";
$atualiza .= "UPDATE `produtos` SET `estoque` = `estoque` + '$estoque', `vlVenda` = '$vlVenda', `vlCompra` = '$vlCompra' WHERE `cBarras` = '$cBarras';";
$grava .= "('$codigo', '$cBarras', '$nProd', '$un', '$estoque', '$vlVenda', '$ncm', '$vlCompra', '$pICMS', '$perc_ipi'),";
}
//Remove a última vírgula da string SQL
$grava = substr($grava, 0, -1);
//echo $sql."<br/><br/>";
$execute = mysqli_query($LOCAL, $sql);
if ($execute !=0) {
echo "deu";
}else{
echo "não deu";
}
?>