Jump to content
Gilberto Jr

Salvando Formulário Com Vários Checkbox e Radios

Recommended Posts

Bom dia pessoal;

 

Eu estou com um problema em um formulário aqui no meu sistema que eu não estou conseguindo resolver.

 

Seguinte, tenho um formulário, e nesse formulário tem vários checkbox com o mesmo nome, e vários radios com o mesmo nome. E tipo, quando eu marcar o checkbox ele tem que desmarcar o se algum radio estiver marcado, e se eu marcar algum radio ele deve desmarcar o checkbox daquela linha.

 

E caso eu selecione algum radio, ele deve abrir um <select name="teste"></select>. Isso para cada linha. Lembrando que cada radio é <select name="teste"></select> diferente.

 

E quando eu salvar, ele tem que salvar informação nos valores dos checkbox marcados, e nos que não foram marcados, ele deve salvar outra informação, que é salvar o valor do radio marcado e o valor do <select name="teste"></select> 

 

Segue o código do meu formulário.

 


<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Formulario</title>
</head>

<body>

<form method="post" action="#update_baixa_atribuicao.asp" id="form77">
<%

set bscvolume2 = conn.execute("select datrib.id as iddatrib, count(SUBSTRING(n_rastreador,1,12)) as totalv, catrib.id as id,datrib.status_entrega as status_entrega,entr.idcliente as destinatario,SUBSTRING(n_rastreador,1,12) as n_rastreador from d_atribuicao as datrib inner join c_atribuicao as catrib on catrib.id=datrib.id_atribucao inner join volume as vl on vl.n_rastreio=datrib.n_rastreador inner join entrega as entr on vl.id_entrega=entr.id  where catrib.id='"&idcatrib&"' group by SUBSTRING(n_rastreador,1,12)")


WHILE bscvolume2.eof = false
%>
  <tr class="texto">
    <td>
    <%=bscvolume2("n_rastreador")%>
    </td>
    <td>

    <%
        set bscdest = conn.execute("select * from clientes where id='"&bscvolume2("destinatario")&"'")
    %>
    <%=bscdest("fantasia_apelido")%>
    </td>
    <td>
    
    <input type="hidden" name="rastreio" value="<%=bscvolume2("n_rastreador")%>" />
    <input type="text" name="idcatrib" value="<%=bscvolume2("iddatrib")%>" />
        <a href="#" rel="tooltip" alt="<strong>VOL(S):<%while rsp2.eof = false:response.Write("&nbsp;"&right(rsp2("n_rastreador"),2)&"&nbsp;"):rsp2.movenext:wend%></strong>">    
        <%=rsp("tt")%>    
        </a>
    </td>
    <td>
    
    <input type="checkbox" id="rastro" name="rastro" value="<%=bscvolume2("n_rastreador")%>" />

    </td>
    <td>
    <input type="radio" name="entreddevo" id="redist" value="5" />
    </td>
    <td>
    <input type="radio" name="entreddevo" id="devolv"  value="6" />
    </td>
    <td>
    <select name="motivored" id="motivored">
    <option value="Endereço Insuficiente">Endereço Insuficiente</option>
    <option value="Endereço Não Existe">Endereço Não Existe</option>
    <option value="Ausente">Ausente</option>
    <option value="Desconhecido">Desconhecido</option>
    <option value="Recusado">Recusado</option>
    <option value="Outros">Outros</option>
    </select>
    
    <select name="motivodev" id="motivodev">
    <option value="Ausente">Ausente</option>
    </select>
    </td>
    <td>
    

<input type="hidden" id="validalink" value="<%=cint(rsr("tt"))%>" />


    </td>    

  </tr>
<%
bscvolume2.movenext
wend
%>

<tr>
    <td colspan="8" align="center">
    <input type="submit" value="SALVAR" class="enviar" />
    </td>
</tr>
</form>

</table>


</body>
</html>

 

Se alguém puder me ajudar.

 

Att;

Gilberto Jr

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By thiamatte
      pesquisei muito e não consegui encontrar a solução para o meu problema, alguém poderia me ajudar.
      tenho um BD carro, BD opcionais e um BD (cod_carro e cod_opcional).
      cadastro todos os opcionais e quando vou cadastrar os carros carrega os checkbox vindos do BD e gravo até aí tudo normal e funcionando, o problema é quando eu quero editar o carro, não consigo trazer ticado os opcionais já cadastrados no BD, segue o código:
       
      $Opcional = $conn->query ("SELECT * FROM opcional ORDER BY opcional ASC");
      $CarroOpcional = $conn->query ("SELECT * FROM carro_opcional, opcional WHERE carro_opcional.cod_carro = '$cod_carro' AND carro_opcional.cod_opcional = opcional.cod_opcional");

      $row_CarroOpcional = $CarroOpcional->fetch( PDO::FETCH_ASSOC );
       
      <?
      while ($row_Opcional = $Opcional->fetch(PDO::FETCH_ASSOC)) {
           foreach($row_CarroOpcional as $row => $cod_opcional) {
                if ($cod_opcional === $row_Opcional['cod_opcional']) {
                     $opcional_selecionado = "checked";
                }
           } ?>
      <input name="cod_opcional[]" type="checkbox" id="cod_opcional" value="<? echo $row_Opcional['cod_opcional']; ?>" <? echo $opcional_selecionado; ?>><? echo $row_Opcional['opcional']; ?>
      <? } ?>
       
      Desde já agradeço a ajuda
    • By Dineysil
      Boa tarde!
       
      Sou iniciante em Javascript e Ajax e estou precisando de criar uma função para:
      Em um Form tenho dois "radios" jurídico e físico, preciso que ao clicar em uma opção no form alterne uma "Label" e uma "Text"
      Se a opção for Físico a Label será CPF: e a Text terá uma mascara de cpf
      Se a opção for Jurídico a Label será CNPJ: e a Text terá uma mascara de cnpj
       
      Com relação as máscaras eu já as tenho.
       
      O site está em ASP Clássico

      Agradeço se alguém poder ajudar.
       
      Claudiney
    • By gust.php
      Prezados, boa noite.
       
      Tenho uma lista com vários registros, quero selecionar alguns registros e enviá-los para serem faturados. Estou tentando assim:
       
      Se eu tirar o $.ajax e colocar um alert(id), ele mostra todos os IDs selecionados, direitinho. Usando o ajax não estou conseguindo chamar minha Action no controller.
       
      Podem ajudar?
      // BOTÃO <input type="submit" value="Faturar Serviço" id="envia" class="btn btn-success pull-right" disabled="true"> // checkBox <th class="text-sm"><input type="checkbox" class="checkbox" name="id" id="id" value="<?php echo $le->getIDSERVICO(); ?>"></th> <script> $(function(){ $("[name='id']").change(function(){ var countSelected = $("input[name='id']:checked").length; var $btnEnviar = $('#envia'); $btnEnviar.prop("disabled", countSelected == 0); $btnEnviar.val('Faturar Serviço' + (countSelected > 1 ? 's' : '')); }); }); $(document).ready(function() { $("#envia").click(function(){ var ids = []; $.each($("input[name='id']:checked"), function(){ ids.push($(this).val()); }); $.ajax({ method: 'POST', url: '/sgt/financeiro/faturaServicosSelecionados', data: { ids: ids } }); }); }); </script>  
       
    • By rxmarti
      Saudações, sou novo no forum, mas não em pesquisas e este tem me ajudado muito em meus estudos, mas esbarrei em um problema e não estou encontrando uma solução que eu entenda seu funcionamento, o problema:
       
      O form que estou desenvolvendo em PHP possuí alguns campos checkbox e através de jvs eu consigo habilitá-los ou não por opção sim ou não (radio + onclick):
      <script>
      function enbl(form)
       {
          form.x_daye[0].disabled = false;
          form.x_daye[1].disabled = false;
          form.x_daye[2].disabled = false;
       }
       function disbl(form)
       {
          form.x_daye[0].disabled = true;
          form.x_daye[1].disabled = true;
          form.x_daye[2].disabled = true;
       }
                          
      </script>";  
      <input type=radio name=v_mandaemail value=NAO onClick=disbl(this.form)>NAO
      <input type=radio name=v_mandaemail value=SIM onClick=enbl(this.form)>SIM
           
      <input type=checkbox id=x_daye name=v_exc_day[] value=arq1>arq1
      <input type=checkbox id=x_daye name=v_exc_day[] value=arq2>arq2
      <input type=checkbox id=x_daye name=v_exc_day[] value=arq3>arq3
      ...
       
      Bom, isso está funcionando, mas se houver mais arquivos(arq*) e esta quantidade for listada em um  "while" , como posso fazer que a mesma função oriente qualquer checkbox listado.
       
      Muito grato
       
      RM
       
       
    • By Rafael Freitas
      Fala galera!
      Estou travado em uma parte do projeto que estou fazendo, quem puder me ajudar, desde já agradeço.
      Seguinte,  eu tenho alguns dados gravados em uma tabela no banco. Eu recupero estes dados exibindo em uma tabela o nome do parametro "p_descricao" e um checkbox do lado, segue abaixo:
      <?php $max = 200; if(!$pagina){ $pagina = 1; } $inicio = $pagina -1; $inicio = $inicio * $max; $consulta = ("SELECT * FROM parametros WHERE p_tipo_analise='MICROBIOLOGICA'"); $p_id = $_GET["p_id"]; $query = mysql_query("$consulta LIMIT $inicio,$max"); $todos = mysql_query($consulta); $total = mysql_num_rows($todos); $tp = $total / $max; $regLinha = 4; $i = ceil($max / $regLinha); $j = 1; $z = 0; echo " <table width=100% class='tabela_parametros_itens' border=1><tr> "; while($x = mysql_fetch_array($query)){ echo "<td> <input type='checkbox' name='parametro' value='" .$x[p_descricao]."' checked> " .$x[p_id]." - " .$x[p_descricao]."</td>"; $z++; if($z == $regLinha and $j < $i){ echo "</tr><tr>"; $z = 0; $j++; } if($z == $regLinha and $j == $i){ echo "</tr>"; } } echo "</table>"; Eu coloquei checked para todos estarem marcados, até aí tudo certo. O que acontece é que quando eu cadastro, ele só grava no banco, o último registro, ou então se eu desmarco todos e deixo somente 1 marcado, aí ele grava certo.
       
      O que eu queria era gravar todos os registros que estiverem marcados com a checkbox e não só 1.
       
      Conto com a ajuda de vocês.
       
      Abraço.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.