Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá galera,
Tenho um form em que esses 4 campos da linha podem ser adicionados vários.
Não consegui pegar esses valores numa array pra separar cada valor numa variável.
/applications/core/interface/imageproxy/imageproxy.php?img=http://atribunanaweb.com.br/pub/form-array.jpg&key=42ed7acb27afd80b640310b014e89cb7b900fe7376368b0d83bb0c9fdf4a10a9" alt="form-array.jpg" />
Henrique, a parte do form está assim, só que tem um JQuery que duplica esses 4 campos e ficam com mesmos nomes nos campos.
<header class="f-title color">Informações da Carga</header>
<div class="f-row" id="cargas">
<div class="volumes">
<div class="one-third">
<label for="qtd">Quantidade de volume(s):</label>
<input type="number" name="qtd" id="qtd" title="Mínimo 1 número e máximo 3" min="1" maxlength="3" required />
</div>
<div class="one-sixth">
<label for="largura">Cm de largura:</label>
<input type="number" name="largura" id="largura" title="Mínimo 1 número e máximo 3" min="1" maxlength="3" required />
</div>
<div class="one-sixth">
<label for="altura">Cm de altura:</label>
<input type="number" name="altura" id="altura" title="Mínimo 1 número e máximo 3" min="1" maxlength="3" required />
</div>
<div class="one-third">
<label for="comprim">Cm de comprimento:</label>
<input type="number" name="comprim" id="comprim" title="Mínimo 1 número e máximo 3" min="1" maxlength="3" required />
</div>
</div>
</div>
Já no ASP eu fiz de duas formas, um com request.form normal.... que acho que dá pra tratar esses resultados que recebo:
Quantidade: 1, 2, 3
Largura: 10, 11, 22
Altura: 20, 22, 44
Comprimento: 30, 33, 66
e outro que procurei na Net:
For i = 1 to Request.Form("pfpj").count
pfpj = Request.Form("pfpj")(i) & "<BR>"
Next
For i = 1 to Request.Form("largura").count
largura = Request.Form("largura")(i) & "<BR>"
Next
For i = 1 to Request.Form("altura").count
altura = Request.Form("altura")(i) & "<BR>"
Next
For i = 1 to Request.Form("comprim").count
comprim = Request.Form("comprim")(i) & "<BR>"
Next
Eu não entendi direito como pegar os valores das 3 Qtds, 3 Larguras, 3 Alturas e 3 comprimentos... cada um na sua variável....
O maior problema é que eu não sei quantas LINHAS com 4 campos irão ser adicionados via JQuery.
Eu acho que precisarei de um loop pra contar quantas QTD por exemplo tem no form pra depois eu repetir também no arquivo que será enviado por email.
* no ASP acima não é PFPJ, escrevi errado ai... é QTD....
Olá Galera e Henrique,
Resolvi meu caso com um exemplo daqui mesmo do forum, só que o título do post era diferente, por isso não tinha achado.
Segue o código como ficou.
<%
Dim i, arrayQTD, arrayLARGURA, arrayALTURA, arrayCOMPRIM
' ESTE EXEMPLO É PARA INSERIR NO BANCO DE DADOS, VÁRIOS VALORES QUANDO NÃO SABEMOS A QUANTIDADE DE CAMPOS
'arrayNome = (Split(request.Form("tnome"),","))
'arrayTra = (Split(request.Form("tra"),","))
'arrayNotaParcial = (Split(request.Form("tparcial"),","))
'
'i=0
'For Each item in arrayQTD
' SQL = "INSERT INTO dbo.notas_w (ra,aluno,notaparcial) VALUES ('"& arrayTra(i) &"','"& item &"',"& arrayNotaParcial(i) &")"
'next
' JÁ ESSE EXEMPLO FOI O QUE USEI PARA O QUE PRECISEI
arrayQTD = (Split(request.Form("qtd"),","))
arrayLARGURA = (Split(request.Form("largura"),","))
arrayALTURA = (Split(request.Form("altura"),","))
arrayCOMPRIM = (Split(request.Form("comprim"),","))
' AQUI É CRIADO UMA TABELA COM OS VALORES, TODO O CÓDIGO HTML GERADO É COLOCADO NUMA VARIÁVEL PARA SER ENVIADO VIA EMAIL DEPOIS
corpo = corpo & "<table width='100%' border='0' cellspacing='4' cellpadding='10'><tbody style='font-family: Verdana,tahoma; font-size: 12px;'>"
corpo = corpo & " <tr style='background-color: rgb(212, 212, 212); font-weight: bold;'><td colspan='4' bgcolor='#B9B9B9' align='center'>INFORMAÇÕES DA ENCOMENDA</td></tr>"
corpo = corpo & " <tr style='background-color: rgb(212, 212, 212); font-weight: bold;'><td>Quantidade</td><td>Largura (cm)</td><td>Altura (cm)</td><td>Comprimento (cm)</td></tr>"
i=0
For Each item in arrayQTD
corpo = corpo & " <tr style='background-color: #F4F4F4;'><td>"& item &"</td><td>"& arrayLARGURA(i) &"</td><td>"& arrayALTURA(i) &"</td><td>"& arrayCOMPRIM(i) &"</td></tr>"
Next
corpo = corpo & "</tbody></table>"
%>
Alguém sabe me dizer esse esquema da Array só que em PHP ??
arrayQTD = (Split(request.Form("qtd"),","))
arrayLARGURA = (Split(request.Form("largura"),","))
arrayALTURA = (Split(request.Form("altura"),","))
arrayCOMPRIM = (Split(request.Form("comprim"),","))
i=0
For Each item in arrayQTD
corpo = corpo & " <tr style='background-color: #F4F4F4;'><td>"& item &"</td><td>"& arrayLARGURA(i) &"</td><td>"& arrayALTURA(i) &"</td><td>"& arrayCOMPRIM(i) &"</td></tr>"
i = i+1
Next
Tive que mudar a forma de envio do form por causa da porcaria da hospedagem que o cliente tem que é o TERRA... lá o cara tem uns 100 contas de email... então mantive só a hospedagem na Locaweb..
posta seu código ai fica melhor a compreensão :coolio: