Ir para conteúdo
Fórum Script Brasil
  • 0

Entregando valor ao campo hidden


Carlos Rocha

Pergunta

Pessoal.

Bom Dia.

Estou numa dificuldade enorme e preciso da ajuida de vocês.

Seguinte:

Tenho um form que gera uma lista (via while php), de fornecedores.

Cada volta desse while retorna apenas um fornecedor.

Daí, dentro dessew while, e para cada fornecedor, eu faço outrop while para listar os produtos desse fornecedores.

Bom, acontece que no primeiro while onde eu listo os fonecedores, eu crio um campo texto o comprador colocar alguma obsrvaçao:

<input type=\"text\" name=\"{$i}[observa_cli]\"  id=\"{$i}[observa_cli]\" value=\"\" style=\"border-color:black\">
e dois radio buttons para o comprador escolher s quer pagar os produtos daquele fornecedor a vista ou a prazo. Acontece, que para cada produto escolhido eu preciso enviar junto dele, em um array php ($_POST), essa informação da condiçao de pagamento e a obsrvação. Daí tive a ideia de contar quantos produto o fornecedor tem e criar campos hidden no formulario com o mesmo id name do campo texto e dos radio buttos. Isso já esta sendo feito:
for ($ob=$i;$ob<(mysql_num_rows($sql_produtos_query)+ $i);$ob++)
            {
              if ($ob!=$i)
              {
                  echo "<input type=\"hidden\" name=\"{$ob}[observa_cli]\" id=\"{$ob}[observa_cli]\" value=\"Teste\">";
              }
            }
Acontece que esta sendo feito dinamicamente. Daí, para cada volta do primeiro while (para cada fornecedor) é criado um campos text
<input type=\"text\" name=\"{$i}[observa_cli]\"  id=\"{$i}[observa_cli]\" value=\"\" style=\"border-color:black\">
E dois radio buttons para escolha da condiçao de pagamento. Bom, Agora, eu preciso entregar para cada campo hiddem os valores que o cliente escolheu em condiçao de pgamento e obsrvaçao. Como faço isso a partir do botão de submit do form? A dinamica da coisa seria mais ou menos assim
Produto 1 -> TipoPgto 1(Radio Button 1)                                  -> Observação 1 (Type Text 1)
Produto 2 -> TopoPgto 2(Type Hidden recebendo o valor de Radio button 1) -> Observação 2 (Tupe hidden recebendo valor de Type Text 1)
Produto 3 -> TopoPgto 3(Type Hidden recebendo o valor de Radio button 1) -> Observação 3 (Tupe hidden recebendo valor de Type Text 1)
.......
n

Editado por Carlos Rocha
Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Preciso fazer uma soma em JS para implementar o nome do campo.

echo "
<input type=\"radio\" name=\"{$i}[radio_pgto]\" id=\"{$i}[radio_pgto]\" value=\"1\" checked=\"checked\" onclick=\"fecha('{$i}[div_pgto_prazo]')\" onchange=\"{$i+1}[radio_pgto].value=this.value\"\"> À vista
<input type=\"radio\" name=\"{$i}[radio_pgto]\" id=\"{$i}[radio_pgto]\" value=\"2\" onclick=\"abre('{$i}[div_pgto_prazo]')\" onchange=\"{$i+1}[radio_pgto].value=this.value\"\"> À prazo
<div id=\"{$i}[div_pgto_prazo]\" style=\"display:none\">
Prazos para pagamento para produtos deste fornecedor: <label id=\"{$i}[label_prazo]\">$pgto_prazo</label>
</div>
";
Como faço?
onchange=\"{$i+1}[radio_pgto].value=this.value\"

Link para o comentário
Compartilhar em outros sites

  • 0

Criei essa função:

// JavaScript Document
function entrega_valores(numrow, valor_i, valor_campo, nome_campo)
{
for(i=0;i<eval(numrow+valor_i-1);i++)
{

'document.getElementById('+eval(i+1)+'['+nome_campo+']).value=valor_campo';
}
}
E estou chamando ela de do evento no campo radio e no campo text para que eles complementem os hiddens. Não da erro, mas também não funciona.
echo "
<input type=\"radio\" name=\"{$i}[radio_pgto]\" id=\"{$i}[radio_pgto]\" value=\"1\" checked=\"checked\" onclick=\"fecha('{$i}[div_pgto_prazo]'); entrega_valores($numrows,$i, this.value,'radio_pgto' )\"\"> À vista
<input type=\"radio\" name=\"{$i}[radio_pgto]\" id=\"{$i}[radio_pgto]\" value=\"2\" onclick=\"abre('{$i}[div_pgto_prazo]'); entrega_valores($numrows,$i, this.value,'radio_pgto' )\"\"> À prazo
<div id=\"{$i}[div_pgto_prazo]\" style=\"display:none\">
Prazos para pagamento para produtos deste fornecedor: <label id=\"{$i}[label_prazo]\">$pgto_prazo</label>
</div>

Link para o comentário
Compartilhar em outros sites

  • 0

apenas use o campo de obs e os dois radio buton para cada fornecedor;

ao enviar o form para a página de processo do php.

adicione os dados para cada produto.

por exemplo:

[ ] Banana

[x] Maçã

[ ] Laranja

[x] Limão

[ ] Goiaba

$array1[] = maçã

$array1[] = obs

$array1[] = condicao pagamento

$array2[] = Limão

$array2[] = obs

$array2[] = condicao pagamento

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...