Ir para conteúdo

Arquivado

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

Alfredo B.

Checkbox Que Atualiza Valor Total

Recommended Posts

Galera to tentando criar um sistema de pedidos online e tenho esse codigo aqui já pronto

<td colspan="3"><h4><center>Adicionais</center></h4></td>
  </tr>
  <tr>
    <td><input type="checkbox" autocomplete="off" name="valor" value="2" onClick="soma(this)">  L. Ninho</td>
    <td><input type="checkbox" autocomplete="off" name="valor" value="3" onClick="soma(this)">  Nutella<br></td>
    <td><input type="checkbox" autocomplete="off" name="valor" value="3" onClick="soma(this)">  Chantilly<br></td>
  </tr>
  <tr>
    <td><input type="checkbox" autocomplete="off" name="valor" value="1.5" onClick="soma(this)">  L. Condensado<br></td>
    <td><input type="checkbox" autocomplete="off" name="valor" value="1.5" onClick="soma(this)">  S. Valsa<br></td>
    <td><input type="checkbox" autocomplete="off" name="valor" value="2.5" onClick="soma(this)">  Sorvete<br></td>
  </tr>
  <tr>
    <td><input type="checkbox" autocomplete="off" name="valor" value="2.5" onClick="soma(this)">  Chocolate<br></td>
    <td><input type="checkbox" autocomplete="off" name="valor" value="2" onClick="soma(this)">  Kit Kat<br></td>
    <td><input type="checkbox" autocomplete="off" name="valor" value="2" onClick="soma(this)">  Confete<br></td>
  </tr>
  <tr>
    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  Morango<br></td>
    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  Banana<br></td>
    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  Granola<br></td>
  </tr>
  <tr>
    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  Kiwi<br></td>
    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  Manga<br></td>
    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  Pessego<br></td>
  </tr>
  <tr>
    <td><input type="checkbox" autocomplete="off" name="valor" value="2.00" onClick="soma(this)">  Ovomaltine<br></td>
    <td><input type="checkbox" autocomplete="off" name="valor" value="1.00" onClick="soma(this)">  Mel<br></td>
    <td><input type="checkbox" autocomplete="off" name="valor" value="1.00" onClick="soma(this)">  Paçoca<br></td>
  </tr>
    <tr>
    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  C. Caramelo<br></td>
    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  Bis<br></td>
    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  Chocoball<br></td>
  </tr>
<script type="text/javascript">
(function() {
    var elements = document.getElementsByTagName('input');
    var resultado = document.getElementById('resultado_soma');
    var total = 100.00;
    
    for (var i = 0; i < elements.length; i++) {
        elements[i].onclick = function() {
            if (this.checked === false) {
                total = total - this.value;
            } else {
                total = total + parseFloat(this.value);
            }
            
            resultado.innerHTML = total;
        }
    }
})();
</script>

eu quero que ele exiba o valor aqui

<h4 class="classic-title"><span>Valor Total:</span></h4>
                    <h1> <?php echo $lndet['valorin'] + $valor ?>R$ </h1>

coisa que não está acontecendo... alguem me ajuda

Compartilhar este post


Link para o post
Compartilhar em outros sites
eu quero que ele exiba o valor aqui
<h4 class="classic-title"><span>Valor Total:</span></h4>
                    <h1> <?php $valorin + $valor ?> </h1>

coisa que não está acontecendo... alguem me ajuda

 

 

Ta faltando esse echo mesmo rsrs...

 

 

ficaria assim:

<h4 class="classic-title"><span>Valor Total:</span></h4>
<h1> <?php echo $valorin + $valor; ?> </h1>

Outro detalhe.. criou hj o tópico, n precisa upar assim... as vezes quem pode te ajudar não está disponível, mas sempre tem alguém pra ver seu problema :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu já coloquei o echo, tinha tirado só pra fazer um teste... ele não tá somando só isso

 

meu codigo tá atualmente assim

<h1> <?php echo $lndet['valorin'] + $valor ?>R$ </h1>

Compartilhar este post


Link para o post
Compartilhar em outros sites

De onde vem essas variáveis?

 

em todo caso, habilite os erros no início da sua página...

 

<php?
ini_set('display_errors', true);
error_reporting(E_ALL);

 

 

Da um echo nessas variáveis e vê se elas estão com valores ... e não esquece do ; (ponto e vírgula) ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele retornou esse erro pra mim

Notice: Undefined variable: valor in/home/storage/e/ae/be/acaiamarena/public_html/modulos/detCardapio.phpon line 245

8.5R$

 

 

e respondendo sua pergunta, a variavel valorin vem de uma tabela no banco de dados e a variavel $valor é de um cod js

<script type="text/javascript">(function() {    var elements = document.getElementsByTagName('input');    var resultado = document.getElementById('resultado_soma');    var total = 100.00;        for (var i = 0; i < elements.length; i++) {        elements[i].onclick = function() {            if (this.checked === false) {                total = total - this.value;            } else {                total = total + parseFloat(this.value);            }                        resultado.innerHTML = total;        }    }})();</script>

<tr>    <td><input type="checkbox" autocomplete="off" name="valor" value="2" onClick="soma(this)">  L. Ninho</td>    <td><input type="checkbox" autocomplete="off" name="valor" value="3" onClick="soma(this)">  Nutella<br></td>    <td><input type="checkbox" autocomplete="off" name="valor" value="3" onClick="soma(this)">  Chantilly<br></td>  </tr>  <tr>    <td><input type="checkbox" autocomplete="off" name="valor" value="1.5" onClick="soma(this)">  L. Condensado<br></td>    <td><input type="checkbox" autocomplete="off" name="valor" value="1.5" onClick="soma(this)">  S. Valsa<br></td>    <td><input type="checkbox" autocomplete="off" name="valor" value="2.5" onClick="soma(this)">  Sorvete<br></td>  </tr>  <tr>    <td><input type="checkbox" autocomplete="off" name="valor" value="2.5" onClick="soma(this)">  Chocolate<br></td>    <td><input type="checkbox" autocomplete="off" name="valor" value="2" onClick="soma(this)">  Kit Kat<br></td>    <td><input type="checkbox" autocomplete="off" name="valor" value="2" onClick="soma(this)">  Confete<br></td>  </tr>  <tr>    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  Morango<br></td>    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  Banana<br></td>    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  Granola<br></td>  </tr>  <tr>    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  Kiwi<br></td>    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  Manga<br></td>    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  Pessego<br></td>  </tr>  <tr>    <td><input type="checkbox" autocomplete="off" name="valor" value="2.00" onClick="soma(this)">  Ovomaltine<br></td>    <td><input type="checkbox" autocomplete="off" name="valor" value="1.00" onClick="soma(this)">  Mel<br></td>    <td><input type="checkbox" autocomplete="off" name="valor" value="1.00" onClick="soma(this)">  Paçoca<br></td>  </tr>    <tr>    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  C. Caramelo<br></td>    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  Bis<br></td>    <td><input type="checkbox" autocomplete="off" name="valor" value="1.50" onClick="soma(this)">  Chocoball<br></td>  </tr>

Compartilhar este post


Link para o post
Compartilhar em outros sites

como eu faço então pra ela somar na variavel 'valorin' do php?

 

 

modifiquei o codigo e consegui fazer com que ele somasse as checkbox mas agora eu tenho 3 radio buttons e ele estão somando só que mando eu seleciono outro radiobutton ele não subtrai o antigo ele só soma o novo

Compartilhar este post


Link para o post
Compartilhar em outros sites

<h4 class="classic-title"><span>Valor Total:</span></h4>
<h1> <?php echo $valorin + $valor; ?> </h1>

 

Uma dúvida!

 

Esse $valorin vem do banco? Se você der um var_dump($valorin); Vem algum valor? e ve o que tem no $valor, da uma var_dump($valor); O problema da soma é que pode ser que não está retornando valores numéricos.

 

Esse $valor vem do js? De um alert na sua function pra ver se retorna valor.

 

Se eu fosse você faria a function no js receber todos os valor e somar e retornar o valor total ja no js. E fazia depois mostrar no html. $('#id_de_uma_h1').html(data);

Compartilhar este post


Link para o post
Compartilhar em outros sites

na verdade a variavel valorin não existe e sim a variavel lndet['valorin'] que é do banco de dados uma tabela de produtos

 

 

E eu consegui fazer a soma, só preciso consertar o esquema do radio button

 

EXEMPLO:

 

RADIO BUTTON 1 = 10 REAIS

RADIO BUTTON 2 = 20 REAIS

 

ai eu clico no radio button 1, ele soma 10 reais

só que ai quando eu clico no radio button 2, ao inves dele subtrair os 10 do radio button antigo e somar mais 20 ele simplesmente só soma mais 20 ai o valor total fica 30

 

 

aqui está o scrpit JS

<?php ini_set('display_errors', true);error_reporting(E_ALL) ;?><script LANGUAGE="JavaScript"><!--function checkChoice(whichbox) {with (whichbox.form) {if (whichbox.checked == false)hiddentotal.value = eval(hiddentotal.value) - eval(whichbox.value);elsehiddentotal.value = eval(hiddentotal.value) + eval(whichbox.value);return(formatCurrency(hiddentotal.value));   }}function formatCurrency(num) {num = num.toString().replace(/\$|\,/g,'');if(isNaN(num)) num = "0";cents = Math.floor((num*100+0.5)%100);num = Math.floor((num*100+0.5)/100).toString();if(cents < 10) cents = "0" + cents;for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)num = num.substring(0,num.length-(4*i+3))+','+num.substring(num.length-(4*i+3));return ("" + num + "." + cents);}// funcoes somas de checkdsfunction checkChoice(whichbox) {with (whichbox.form) {if (whichbox.checked == false)hiddentotal.value = eval(hiddentotal.value) - eval(whichbox.value);elsehiddentotal.value = eval(hiddentotal.value) + eval(whichbox.value);return(formatCurrency(hiddentotal.value));   }}// --></script>

aqui está o radio button

<div class="btn-group" data-toggle="buttons">						<?php if($lndet['tamanho'] == 0){ ?>                        <label class="btn btn-default">                            <input type="radio" name="tamanho" id="option1" value="9.25" autocomplete="off" onchange="this.form.total.value=checkChoice(this);"> 250GR                        </label>                        <label class="btn btn-default">                            <input type="radio" name="tamanho" id="option2" value="11.25" autocomplete="off" onchange="this.form.total.value=checkChoice(this);"> 400GR                        </label>  <label class="btn btn-default">                            <input type="radio" name="options" id="option3" value="14.25" autocomplete="off" onchange="this.form.total.value=checkChoice(this);"> 600GR                        </label>                                      <?php } ?>

Alguem ajuda??

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por violin101
      Caros amigos, saudações.

      Por favor, me perdoa em recorrer a ajuda dos amigos, mas preciso entender uma processo que não estou conseguindo sucesso.

      Como mencionado no Título estou escrevendo um Sistema Web para Gerenciamento de Empresa.
       
      Minha dúvida, que preciso muito entender:
      - preciso agora escrever a Rotina para Emissão de NFe e essa parte não estou conseguindo.
       
      tenho assistido alguns vídeos e leituras, mas não estou conseguindo sucesso, já fiz toda as importações das LIB da NFePhp conforme orientação.

      Preciso de ajuda.

      Algum dos amigos tem conhecimento de algum passo-a-passo explicando a criação dessa rotina ?

      tenho visto alguns vídeos com LARAVEL, mas quando tento utilizar e converter para PHP+Codeiginter, dá uma fila de erros que não entendo, mesmo informando as lib necessárias.

      Alguns do amigo tem algum vídeo, leitura explicando essa parte ?

      Grato,

      Cesar.
    • Por violin101
      Caros amigos, saudações.

      Por favor, me perdoa em recorrer ao auxílio dos amigos, mas preciso entender e resolver um problema.
       
      Tenho uma Rotina que o usuário seleciona os produtos que deseja para requerer ao setor responsável.
       
      O usuário escolhe um produto qualquer e Clicla em um button para incluir a lista.

      O problema que estou enfrentando é que após escolher o produto e teclar ENTER o Sistema já salva no BD.
       
      Gostaria de criar uma Tecla de Atalho, para quando incluir/escolher o produto na lista, o usuário tecla como exemplo:
      ALT+A  para agregar a lista
      ALT+S para salvar a lista de itens desejados.

      Assim, quando teclar enter, o sistema não dispara o GRAVAR na Base de Dados.

      Grato,

      Cesar
       
       
       
    • Por violin101
      Caros amigos, saudações.

      Estou com uma pequena dúvida se é possível ser realizado.

      Preciso passar 2 IDs para o Sistema executar a função, estou utilizando desta forma e gostaria de saber como faço via JS para passar os parâmetro que preciso.

      Observação:
      Dentro da TABELA utilizei 2 Forms, para passar os IDS que preciso, funcionou conforme código abaixo.
      <div class="card-body"> <table id="tab_clie" class="table table-bordered table-hover"> <thead> <tr> <th style="text-align:center; width:10%;">Pedido Nº</th> <th style="text-align:center; width:10%;">Data Pedido</th> <th style="text-align:center; width:32%;">Fornecedor</th> <th style="text-align:center; width:10%;">Status</th> <th style="text-align:center; width:5%;">Ação</th> </tr> </thead> <tbody> <?php foreach ($results as $r) { $dta_ped = date(('d/m/Y'), strtotime($r->dataPedido)); switch ($r->pd_status) { case '1': $status = '&nbsp;&nbsp;Aberto&nbsp;&nbsp;'; $txt = '#FFFFFF'; //Cor: Branco $cor = '#000000'; //Cor: Preta break; case '2': $status = 'Atendido Total'; $txt = '#FFFFFF'; //Cor: Branco $cor = '#086108'; //Cor: Verde break; case '3': $status = 'Atendido Parcial'; $txt = '#000000'; //Cor: Branco $cor = '#FEA118'; //Cor: Amarelo break; default: $status = 'Cancelado'; $txt = '#FFFFFF'; //Cor: Branco $cor = '#D20101'; //Cor: Vermelho break; } echo '<tr>'; echo '<td width="10%" height="10" style="text-align:center;">'.$r->pd_numero.'</td>'; echo '<td width="10%" height="10" style="text-align:center;">'.$dta_ped.'</td>'; echo '<td width="32%" height="10" style="text-align:left;">'.$r->nome.'</td>'; echo '<td width="10%" height="10" style="text-align:left;"><span class="badge" style="color:'.$txt.'; background-color:'.$cor.'; border-color:'.$cor.'">'.$status.'</span></td>'; echo '<td width="5%" style="text-align:center;">'; ?> <div class="row"> <?php if($this->permission->checkPermission($this->session->userdata('permissao'), 'vPedido')){ ?> <form action="<?= base_url() ?>compras/pedidos/visualizar" method="POST" > <input type="hidden" name="idPedido" value="<?php echo $r->idPedidos; ?>"> <input type="hidden" name="nrPedido" value="<?php echo $r->pd_numero; ?>"> <button class="btn btn-warning" title="Visualizar" style="margin-left:50%; padding: 1px 3px;"><i class="fa fa-search icon-white"></i></button> </form> <?php } if($this->permission->checkPermission($this->session->userdata('permissao'), 'ePedido')){ ?> <form action="<?= base_url() ?>compras/pedidos/editar" method="POST" > <input type="hidden" name="idPedido" value="<?php echo $r->idPedidos; ?>"> <input type="hidden" name="nrPedido" value="<?php echo $r->pd_numero; ?>"> <button class="btn btn-primary" title="Editar" style="margin-left:50%; padding: 1px 3px;"><i class="fa fa-edit icon-white"></i></button> </form> <?php } ?> </div> <?php echo '</td>'; echo '</tr>'; } ?> </tbody> </table> </div>
      Grato,

      Cesar.
    • Por violin101
      Caros amigos, saudações.

      Por favor, peço desculpa em recorrer a ajuda dos amigos referente uma dúvida.

      Tenho um Sistema que estou escrevendo em PHP + Codeigniter e a minha dúvida em Codeigniter é:
      Obs.: as tabela são em MySql

      => como faço para IMPORTAR o dado de uma Tabela para outra, as tabela são:
      ___________________Tabela de Pedido     =========== para ==========>    Tabela de Entrada de Lançamentos
      itens: codigoProduto | quantidade | valorUnitario  === importar===> itens: codigoProduto | quantidade | valorUnitario
       
      Estou tentando de várias formas, mas não estou conseguindo.

      Por favor, alguém pode me dar uma ajuda, explicação ou orientação.

      Grato,
       
      Cesar
       
    • Por violin101
      Caros amigos, saudações.
       
      Estou com uma pequena dúvida que não estou conseguindo resolver.

      Tenho 2 Tabelas, a 1ª.principal e a 2ª.secundária.

      Exemplo:
      Dados da 1ª Tabela - Peças e Equipamentos
      Dados da 2ª Tabela - Veículos.

      Seria isso:
      0010 - Pneu Aro 20
        [x] 001 - Corsa
        [_] 002 - Fusca
        [_] 003 - Palio
      Comentário:________________
       
      0100 - Óleo para Motor
         [x] 002 - Fusca
         [_] 003 - Palio
      Comentário:________________
       
      1030 - Lubrificante
         [_] 001 - Corsa
         [x] 003 - Palio
      Comentário:________________
       
      O meu problema está sendo quando preciso SALVAR/ATERAR o campo COMENTÁRIO, pois trata-se da 1ª.tabela.
       
      Gostaria salvar o COMENTÁRIO sem interferir nas seleção da 2ª. tabela.
       
      Grato,
       
      Cesar
       
       
       
       
       
×

Informação importante

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