Ir para conteúdo
Fórum Script Brasil

rafaelpampoch

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Sobre rafaelpampoch

rafaelpampoch's Achievements

0

Reputação

  1. rafaelpampoch

    Dúvida Array

    Boa tarde a todos! Estou sofrendo para conseguir fazer um array e gravar no banco... permitam-me explicar-me melhor: Tenho um formulário para criação de orçamentos, e nele existe uma área onde o usuário pode adicionar itens ao orçamento dinamicamente. Esta adição está sendo feita por javascript, funcionando 100%, e cada item do orçamento é composto de vários campos: descrição, condição, valor, etc... Como esses campos são inseridos dinamicamente e podem variar em quantidade, acredito que não haja outra forma de guardá-los no banco senão em forma de arrays. formulário: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Untitled Document</title> &lt;script src="js/jquery-1.3.2.min.js" type="text/javascript"></script> &lt;script type="text/javascript"> $(document).ready(function() { $('.add').click(function(){ var id = parseInt($('#tabelaItens > tbody tr:last input:first').val()) + parseInt(1); $('#tabelaItens > tbody').append('<tr>\n <td><input type="text" class="text-input" name="item[]" id="item[]" value="'+id+'" size="4"></td>\n <td><input type="text" class="text-input" id="descricao[]" size="50"></td>\n <td><input type="text" class="text-input" id="condicao[]" size="8"></td>\n <td><input type="text" class="text-input" id="valor[]" size="8"></td>\n <td><input type="text" class="text-input" id="desconto[]" size="8"></td>\n <td><input type="text" class="text-input" id="total[]" size="8"></td>\n <td> </td>\n</tr>\n'); return false; }); }); </script> </head> <body> <form action="teste-add-2.php" method="post" enctype="multipart/form-data" id="cadastro"> <table width="100%" id="tabelaItens"> <thead> <tr> <td width="40">Item</td> <td>Descrição</td> <td width="75">Cond. Pgto.</td> <td width="75">Vlr. Unit.</td> <td width="75">% Desc.</td> <td width="100">Total</td> <td width="50">Editar</td> </tr> </thead> <tbody> <tr> <td><input type="text" class="text-input" name="itens[item][]" value="1" size="4"></td> <td><input type="text" class="text-input" name="itens[descricao][]" size="50"></td> <td><input type="text" class="text-input" name="itens[condicao][]" size="8"></td> <td><input type="text" class="text-input" name="itens[valor][]" size="8"></td> <td><input type="text" class="text-input" name="itens[desconto][]" size="8"></td> <td><input type="text" class="text-input" name="itens[total][]" size="8"></td> <td> </td> </tr> </tbody> </table> <p><input class="button" value="Enviar" type="submit" tabindex="320"></p> <p><a href="#" class="add">add</a></p> </form> </body> </html> Quando o usuário clica no botão add, é adicionada mais uma linha no final de tabela com os mesmos campos mostrados acima. Até aí tudo bem, o problema surge quando tento tratar esse dados na página que os recebe, colocando eles em arrays pra salvar no banco de dados... acaba aparecendo somente o primeiro item inserido... página add-2.php: <?php $valores = $_POST['itens']; foreach($valores[item] as $key=>$value){ echo "Item: ".$value."<br/>"; echo "Descrição: ".$valores[descricao][$key]."<br/>"; echo "Condição: ".$valores[condicao][$key]."<br/>"; echo "Valor: ".$valores[valor][$key]."<br/>"; echo "Desconto: ".$valores[desconto][$key]."<br/>"; echo "Total: ".$valores[total][$key]."<br/>"; } ?> Gostaria de saber se alguém conhece a forma correta de receber esses dados, para que seja possível gravar no banco... Desde já agradeço a atenção de todos! Muito obrigado!
×
×
  • Criar Novo...