Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Bruno Tubino Borge

Problema para recuperar dados de checkbox multipla escolha

Recommended Posts

Pessoal, To com um problema aqui para recuperar dados de um form que tem checkbox de multipla escolha.

 

Criei no meu banco de dados uma tabela para cada uma das check box, e fiz o seguinte:

 

<input type="checkbox" id="estiloinputescolha" name="checkum" value="1"/> E-mail<br />
<input type="checkbox" id="estiloinputescolha" name="checkdois" value="1"/> Celular<br />
<input type="checkbox" id="estiloinputescolha" name="checktres" value="1"/> Telefone Fixo<br />
 
 
 $checkum = (isset($_POST['checkum']) && !empty($_POST['checkum'])) ? 1 : 0;
   
    $checkdois = (isset($_POST['checkdois']) && !empty($_POST['checkdois'])) ? 1 : 0;
   
    $checktres = (isset($_POST['checktres']) && !empty($_POST['checktres'])) ? 1 : 0;
 

se a checkbox não for marcada o resultado é zero se for marcada o resultado é 1, e então é inserido na tabela 1 para marcado e 0 para não marcado.

 

O problema que se eu for puxar do banco o resultado usando:

 

<?php echo $qr['checkum'];?>,<?php echo $qr['checkdois'];?>,<?php echo $qr['checktres'];?>

me retorna os valores em numeros, tipo: 0,1,0 e eu preciso que me retorne os valores 1 nos nomes e-mail, celular,telefone, e caso o valor seja zero me retorne em branco.

como eu posso fazer isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom resolvi mudar a estrategia, acho que seja o mais correto desta forma, o que acham?

 

<input type="checkbox" id="estiloinputescolha" name="validar[]" value="email"/> E-mail<br />
<input type="checkbox" id="estiloinputescolha" name="validar[]" value="celular"/> Celular<br />
<input type="checkbox" id="estiloinputescolha" name="validar[]" value="fixo"/> Telefone Fixo<br /><br />

if(!empty($_POST['validar'])){
    $campo = $_POST['validar'];
	foreach($campo as $value) {
		echo $value.'</br>';
	}
}

Melhor seguir a linha da primeira forma ou esta?

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala @Bruno Tubino Borge, Então, eu ia te sugerir exatamente a segunda opção. Pois futuramente se você precisar acrescentar valor, bastará adicionar outro campo. É uma forma de "automatizar" a rotina em questão.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por helkton
      iai galera, tenho uma pendenga e não consigo achar nada pra suprir minha dúvida rsss
      seguinte....
       
      Tenho um cardápio Online onde tenho os devidos ITENS sendo abertos em uma janela modal e nesta janela tenho os devidos ITENS EXTRAS em um checkbox que o usuario clicam e adicionam
      esta é minha lista de ADICIONAIS EXTRAS QUE PEGO DO BANCO DE DADOS 
       
      <label style="border:0px red solid;font-size:1em;width:90%;text-align:left;padding:0px;margin-left:2em;" onclick="somar()"> <input style="height:23px;width:23px;cursor:pointer" type="checkbox" class='limited<?php echo $resultExtrasDelivery->idExtraDelivery?>' id="valorItemExtra" name="idExtraSelects[]" value="<?php echo $resultItensExtras->valorItemExtra?>" > <span style="cursor:pointer"><?php echo $resultItensExtras->nomeItemExtra?> <span style="font-size:0.7em;color:#DD2C00"> <small> <?php if($resultItensExtras->valorItemExtra == '0.00'){echo'';}else{echo '+R$ '.$resultItensExtras->valorItemExtra.'<input type="text" value="'.$resultItensExtras->valorItemExtra.'">';}?></small> </span> </span> </label> ela vem tipo assim
      AcréscimoTradicional - Escolha até 3 opções
      BACON 1,00
      CALABRESA 1,00
      MUSSARELA 1,00
      PRESUNTO 1,00
      OVO 1,00
       
      o que quero fazer é somente somar os itens clicados pelo usuario e somar com o TOTAL DO ITEM 
      tipo pegar o total do item tipo R$30,00 e ir somando com os acrescimos escolhidos
       
      <script> function somar() { // var valorItem = document.getElementById('valorItemExtra').value; var checkbox = document.getElementById('#valorItemExtra'); var total = 0; if(checkbox.checked == true){ total += checkbox.value; } document.getElementById('somar').innerHTML = total; } </script>  
    • Por Sapinn
      Salve! Não consigo verificar se o checkbox foi marcado, isso não faz o menor sentido porquê aparentemente eu fiz tudo certo.
       
      HTML:
       <div class="mt-4 mb-3 row ">                 <label class="label_checkbox">Adicionar customização                   <input type="checkbox" id="checkbox" name="custom_shirt">                   <span class="checkmark"></span>                 </label>               </div>  
      JAVASCRIPT:
       let checkedCustomize = document.getElementById("checkbox");  if(checkedCustomize.checked){     alert("Checkbox marcado");  }else{      console.log("checkbox não marcado");  }  
    • Por Caio Vargas
      Meus amigos estou com um problema que não consigo resolver as vezes e coisas simples mais não encaixa na minha cabeca eu tenho multiplos checkbox onde cada um tem o valor porem eu tô salvando isso em uma tabela única separado por vírgula não sei se isso e correto mais na hora de recuperar e colocar como checado não vai pq ele retorna os valores tudo jundo mesmo dando um explode não vai 
    • Por tony_lu
      Olá pessoal quero colocar um campo checkbox de aceito os termos de uso, mas não estou conseguindo validar este campo para enviar
      o form apenas se este campo por marcado podem me ajudar?
    • Por carlosmassam
      Bom dia a todos. Eu tenho o seguinte código em HTML
      <input type="checkbox" id="checkmarcacao1" name="checkmarcacao1" value="checkmarcacao1"> <input type="time" id="hora101" name="hora101" disabled="disabled"> E tenho o seguinte código em Javascript
      <script src="https://code.jquery.com/jquery-3.4.1.min.js"></script> <script> $(document).ready(function () { $('input[name=checkmarcacao1]').change(function() { if ($(this).is(':checked')) { $('input[name=hora101]').removeAttr('disabled'); } else { $('input[name=hora101]').attr('disabled',true); } }); }); </script> Esse meu código em Javascript faz o seguinte: Quando meu Checkbox está marcado, ele habilita o input time. Se eu desmarcar o checkbox, o input time é desabilitado.
      Acontece que se eu marcar o checkbox, escrever no input time, por exemplo: 12:34, depois desmarcar o checkbox o  input time fica desabilitado porém o valor 12:34 ainda fica escrito nele.
      Eu gostaria de saber como apagar o valor do input time quando o checkbox estiver desmarcado. 
       
      Quem quiser testar o código segue o link: https://jsfiddle.net/o8f3zvqu/
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.