Ir para conteúdo

Arquivado

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

Mozelli

[Resolvido] Arredondamento do tipo Decimal

Recommended Posts

Olá pessoal.

Estou querendo criar um campo de preço em uma tabela e defini o tipo como Decimal(6,2), porém quando salvo a alteração o mysql muda o formato do número para (6,0). Quando insiro um valor, por exemplo 6.93, o mysql muda para 7.

Como resolver isso?

Desde já, obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado Alaerte Gabriel. Deu certo utilizando FLOAT(7,2).

Só não entendi por que o tipo DECIMAL() não está mostrando os números decimais.

Mas tudo bem.

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por DuRodrig
      Pessoal, bom dia! 
      Estou fazendo uma página com um cálculo simples de porcentagem.
      Existe um formuário que coloco o valor da venda, a comissão é fixa em 13% e a tarifa é um valor que você coloca também.
      Exemplo: (valor da venda) R$ 100,00 - (comissão 13%) - (tarifa) R$ 8,50 = (resultado) R$ 78,50, só que está gerando o resultado de R$ 79,00.
      Como faço para corrgir esse problema?
      Segue o código:

       
      $(function(){ $('#valorVenda').on('input', function() { calculate(); }); $('#tarifa').on('input', function() { calculate(); }); function calculate(){ var pPos = parseFloat($('#valorVenda').val()); var tar = parseFloat($('#tarifa').val()); var result = " "; if(isNaN(pPos) || isNaN(tar)){ }else{ result = ((pPos - ((13.00 * pPos) / 100.00)) - tar).toFixed(2); } $('#total').val(result); } });  
      Desde já agradeço.
    • Por manolegal
      Olá amigos(as) do Fórum.
      Tenho um número inteiro no PHP e preciso inseri-lo no Postgresql com 02 casas decimais.
      Defini o campo no Postgresql do tipo numeric(14,2)
      O valor está assim no PHP:
      2961966 Preciso gravar no BD da seguinte maneira:
      29619.66 Porém está gravando da seguinte forma:
      2961966.00 Tentei utilizando number_format, porém não consegui:
      $numero_bd = number_format($numero, '.', ''); $numero_bd = number_format($numero,2,"."); $numero_bd = number_format($numero,2,","numerovalor_ref_15,2,",","."); Caso alguém possa me ajudar, desde já agradeço.
    • Por manolegal
      Bom dia
      Preciso adequar um campo para receber valor com máscara com 03 casas decimais.
      Com 02 casas está funcionando corretamente:
      $('#meu_campo').maskMoney( {symbol: "R$ ", decimal: ",", thousands: "."} ); Tentei:
      $('#meu_campo').maskMoney( {symbol: "R$ ", decimal: ",", thousands: ".", precision: "3"} ); Porém não funciona e nem permite que eu digite algum valor no campo.
      Preciso que o campo aceite valores no formato: ###,### ou ##,###.
    • Por 11closed
      Olá, boa tarde! 
      Estou com uma duvida, que pelo o que pesquisei, é bastante discutida nas comunidades de programadores e cada um fala uma coisa, por tanto vim até aqui para tentar chegar a uma conclusão.
       
      Gostaria de gravar valores financeiros no BD de alguma forma que não traga problemas futuros, por causa de possiveis arredondamentos automaticos.
      Quero saber qual o melhor mecanismo para gravar no campo de valores financeiros, valores com decimais e dizimas, exe: 0.2308, 128.997, 1.28989 ..etc independentemente da quantidade de numeros no dizimas, eu preciso saber a quantidade exata.
       
      Obrigado, no aguardo
       
    • Por manolegal
      Bom dia
      Estou realizando a soma total de um campo que pode receber vários valores, porém a soma está mostrando valor decimal "1,00" ao invés de por exemplo "1,78".
      Meu código:
      <?php for($i=0; $i<count($valor_dcto_fiscal); $i++) { ?> <td> <?php $total_produto = $valor_dcto_fiscal[$i]; ?> <?php $total_geral = $total_geral + $total_produto; ?></td> <td><input name="valor_dcto_fiscal[]" id="valor_dcto_fiscal<?php echo "$i";?>" type="text" size="12" maxlength="10" value="<?php echo "$valor_dcto_fiscal[$i]";?>" onkeyup="multiplica('<?php echo "$i";?>')" ></td> <?php } // Fecha "for" ?> <td>Total:<input name="valor_total_geral" id="valor_total_geral" type="text" size="12" maxlength="10" readonly="readonly" value="<?php echo "R$ $total_geral";?>"></td> <script type="text/javascript"> var quant = document.getElementsByName("valor_dcto_fiscal[]"); var teste = []; function multiplica() { var soma = [].reduce.call(quant, function (somatorio, el) { return somatorio + parseFloat(el.value, 10) || 0; }, 0); var soma_arredonda = soma.toFixed(2); // Esse retorna 2 casas decimais document.getElementById("valor_total_geral").value = soma_arredonda; } </script> Se alguém puder sugerir algo, agradeço.
×

Informação importante

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