Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal, eu aqui incomodando de novo
Vou postar o código, depois explico ele
// se não existirem erros
if ($erros == '') {
// atualiza o produto no banco de dados
$atualizaproduto = @mysql_query("UPDATE produtos SET pro_descricao = '".$descricao."', pro_cod_fabricante = '".$fabricante."', pro_cod_foco = '".$foco."', pro_categoria = '".$categoria."', pro_marca = '".$marca."', pro_cor = '".$cor."' WHERE pro_id = '".$id."'");
// atualiza os equipamentos que usam o produto
$max = 44;
for($i = 1; $i <= $max; $i++) {
$equipamento = "equipamento".$i;
if($$equipamento != ""){
$deletaequipamento = @mysql_query("DELETE FROM equipamentos WHERE equip_produto_id = '".$id."'");
$insereequipamento = @mysql_query("INSERT INTO equipamentos (equip_produto_id, equip_modelo_id) values ('".$id."', '".$$equipamento."')");
}
}
}Este é um form de edição e na primeira parte do código eu atualizo a tabela produtos
O problema é na segunda parte
Eu deveria atualizar atabela equipamentos, mas não tenho como usar update, pois só tenho disponível a id do modelo de equipamento. O caminho que achei mais lógico foi deletar os valores antigos filtrando pela id do produto, e a seguir adicionar os novos valores
Pela lógica deveria funcionar, mas não é o que acontece, se eu deixar só a parte do código que deleta funciona legal, se deixar só a parte que adiciona tb funciona, mas aí vou ter registros repetidos, se coloco as duas partes do código não dá erro, mas tb não faz o que preciso
Ele deveria deletar todos os registros que fossem iguais á id do produto e a segui adicionar os novos registros,
Ele deleta certinho mas adiciona apenas o último registro
Eu posso marcar dez combos, mas ele pega o valor só do último, o que é interessante é que se eu não deletar e só adicionar ele pega todos os novos registros e adiciona, o que parece é que ele tá adicionando mas a parte do código que exclui está eliminando e deixando só um, se algém puder dar uma help, que tá complicado de descobrir o erro
Desde já agradecido
Carregando comentários...