maykon343 0 Denunciar post Postado Junho 3, 2014 Olá pessoal, alguém pode me ajudar por favor. Estou com o seguinte problema, tenho array para inserir na tabela porém esse array está sendo inserido duplicadamente na tabela. foreach($_SESSION['arquivos'] as $value ){ foreach($_SESSION['produto'] as $id => $quantidade){ $strSQLdois = "INSERT INTO `pedidos` (id_cliente, id_produto, quantidade, arquivo, data) VALUES(?,?,?,?,?,NOW())"; $stmtdois = BD::conn()->prepare($strSQLdois); $stmtdois->execute(array($usuarioLogado->id_cliente, $id, $quantidade, $value)); } } A session arquivos é onde estão guardados os dados dos arquivos de um upload multiplo. A session produto é onde está gravado os dados do produto que foi comprado (o sistema é de um carrinho compras com upload de arquivos). Estou a algum tempo com essa dificuldade porém ainda não consegui resolver, não tenho tanto conhecimento em php por tanto ficarei muito agradecido... Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Junho 3, 2014 Não use foreachs encaixados. Mas sim um único laço, com um contador em comum para os 2 arrays. Compartilhar este post Link para o post Compartilhar em outros sites
maykon343 0 Denunciar post Postado Junho 3, 2014 Não use foreachs encaixados. Mas sim um único laço, com um contador em comum para os 2 arrays. William valeu pela dica, mas como eu poderia fazer isso ? Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Junho 3, 2014 Troque: foreach($_SESSION['arquivos'] as $value ){ foreach($_SESSION['produto'] as $id => $quantidade){por: for($i = 0; $i < sizeof($_SESSION['arquivos']); $i++ ) { echo $_SESSION['arquivos'][$i], $_SESSION['produto'][$i]; }estou assumindo que os 2 arrays possuem tamanhos iguais e são relacionados pelas chaves numéricas. Compartilhar este post Link para o post Compartilhar em outros sites
maykon343 0 Denunciar post Postado Junho 3, 2014 Valeu fera, você realmente manda muito bem, ajudou muito... Só mais uma coisa, como faço para pegar o id e a quantidade do produto assim como eu tava fazendo no foreach ? pois não estou conseguindo Realmente só falta isso pra ficar 100%... Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Junho 3, 2014 Tenta assim: $i = 0; foreach($_SESSION['produto'] as $id => $quantidade){ echo $id, $quantidades, $_SESSION['arquivos'][$i]; //o restante do seu código aqui $i++; } Compartilhar este post Link para o post Compartilhar em outros sites
maykon343 0 Denunciar post Postado Junho 3, 2014 Cara muito obrigado, muito obrigado mesmo. Você é muito bom, meus parabéns fico muito agradecido... Admiro muito você por compartilhar conhecimento e ajudar as pessoas. Valeu fera :clap: Compartilhar este post Link para o post Compartilhar em outros sites