pulao 0 Denunciar post Postado Fevereiro 26, 2010 opa pessoal td certo? tenho uma duvida, estou passando um valor dessa maneira 36,50 para ser multiplcado e receber o valor da mesma forma mais ou menos assim 365,00 ou 3.562,00 estou usando o str_replace assim str_replace(".",",",$total) e $total=number_format($total,2,'.','') queria saber o que estou fazendo de errado pq o resultado nao verifica as casas depois da virgula e me retorna um valor inteiro sempre... desde ja agradeço grato pela atenção moçada !!! Compartilhar este post Link para o post Compartilhar em outros sites
Dee 0 Denunciar post Postado Fevereiro 26, 2010 Nao precisa do str_replace() nesse caso. Se for assim: $valor = 25.00 * 2.60; $valorFor = number_format($valor, 2, '.', ','); echo $valorFor; Compartilhar este post Link para o post Compartilhar em outros sites
visitante_xp 0 Denunciar post Postado Fevereiro 26, 2010 Hmm... Nesse caso, existe um campo onde o usuario digita os valores para efetuar a operação certo? Se for assim, a notação brasileira para valores é 1.234,56. Faz assim: $valor1=$_GET['valor1']; //Pega o valor digitado no campo valor1 $valor1=$_GET['valor2']; //Pega o valor digitado no campo valor2 $valor1=str_replace(".", "", $valor1); //Onde houver ponto ele coloca um espaço vazio. Não coloque aspas abertas (" "), senão da errado. $valor2=str_replace(".", "", $valor2); //Onde houver ponto ele coloca um espaço vazio. Não coloque aspas abertas (" "), senão da errado. $valor1=explode(",", $valor1); //Com isso você separa as casas decimais. $valor2=explode(",", $valor2); //Com isso você separa as casas decimais. $valor1="$valor1[0].$valor1[1]"; //Junte novamente colocando um ponto entre as casas decimais. Só assim o PHP realizará a operação. $valor2="$valor2[0].$valor2[1]"; //Junte novamente colocando um ponto entre as casas decimais. Só assim o PHP realizará a operação. $total=$valor1 (operação) $valor2; $total=number_format($total, 2, ".", ","); Bom, a rotina é chata, mas comigo funcionou...^^ Tenta ai e posta denovo, se alguem tiver outra forma posta ai tmb... Abraço!! Compartilhar este post Link para o post Compartilhar em outros sites
pulao 0 Denunciar post Postado Fevereiro 26, 2010 Nao precisa do str_replace() nesse caso. Se for assim: $valor = 25.00 * 2.60; $valorFor = number_format($valor, 2, '.', ','); echo $valorFor; o calculo é simples dessa forma, $valor=25.60*5; pra esse resultado vai sair tipo 300.50 sei la chutei o resultado, ou 3.650,00 ??? Compartilhar este post Link para o post Compartilhar em outros sites
Dee 0 Denunciar post Postado Fevereiro 26, 2010 Nesse calculo dá 128, 00 com a função number_format(), você testou ? Compartilhar este post Link para o post Compartilhar em outros sites
pulao 0 Denunciar post Postado Fevereiro 26, 2010 Nesse calculo dá 128, 00 com a função number_format(), você testou ? sim testei o bloco ta dessa forma $totalFor=$qtd_atual*$valor_compra; $total=number_format($totalFor,2,'.',''); echo"$total"; /* so pra testar o reultado nesse caso valor_compra recebe um numero dessa forma 36,40 e qtd_atual recebe 4 meu resultado ta sendo 140, sendo que seria 145,60 na esta verificando os numero depois da virgula ja percebi que tenho que tratar a string 36,40 seria um explode e depois o number_format???? Compartilhar este post Link para o post Compartilhar em outros sites
Dee 0 Denunciar post Postado Fevereiro 26, 2010 (float)$totalFor = $qtd_atual * $valor_compra; $total = number_format($totalFor, 2, '.', ','); echo $total; Compartilhar este post Link para o post Compartilhar em outros sites
pulao 0 Denunciar post Postado Fevereiro 26, 2010 (float)$totalFor = $qtd_atual * $valor_compra; $total = number_format($totalFor, 2, '.', ','); echo $total; Resolvido o calculo ficou na medida certa dessa forma mto obrigado segue o codigo para qualquer duvida seguint... $valor_compra=str_replace(".","",$valor_compra); $valor_compra=explode(",",$valor_compra); $valor_compra="$valor_compra[0].$valor_compra[1]"; $totalFor=$qtd_atual*$valor_compra; $total=number_format($totalFor,2,".",","); formato padrao ! Compartilhar este post Link para o post Compartilhar em outros sites
visitante_xp 0 Denunciar post Postado Fevereiro 26, 2010 http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Compartilhar este post Link para o post Compartilhar em outros sites