Ir para conteúdo

Arquivado

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

Marcelo Diniz

[Resolvido] Erro nos dados

Recommended Posts

Olá pessoal, fiz um programinha em php que le um arquivo csv e importa os dados para uma tabela no mysql.

Tudo funcionando bem, uma maravilha. O problema esta sendo que em um campo do csv, por exemplo, valor tnho valores do tipo(615,00 , 60,00, 1025,25, 15,68, 750,25...) e por ai vai. Eu já coloquei na minha tabela no mysql o campo como decimal(10,2), já estou convertendo os valores para que fiquem com ponto(.) no lugar da virgula(,), e esta subindo certo, mas nem tudo, tem uns tipo o 15.68 que sobe e aparece assim na tabela, ótimo, mas tem outros casos como 750.25 que esta aparecendo como 750.00.

 

Algúem tem alguma idéia do que pode ser?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom cara eu sempre uso o campo valor como DOUBLE(12,2) e nunca deu problema no meu, eu tb nao sei se é isso.

E tambem quando fiz o meu programa falei para o usuario digitar ponto no lugar de virgula.

Compartilhar este post


Link para o post
Compartilhar em outros sites

entendi, mas por politicas internas, tenho que deixar esse campo como decimal, e quanto ao lugar onde fica os dados pode ser ponto ou virgula, alias, estou convertendo tudo que vem para ponto mesmo, então quanto a isso é o de menos, mas estou ficando maluco com esse erro que não estou conseguindo visualizar........

Mas se alguem tiver alguma ideia.......

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, acho que achei o erro, mas agora como posso resolver? Assim:

 

tenho uns dados

 

1.025,50

105,50

50,00

80,65

 

preciso que fiquem assim

 

1025.50

105.50

50.00

80.65

 

Eu usei o função number_format($num, 2, ".", "") para isso.

 

O que posso fazer? alguem poderia me ajudar nessa!?

 

Valews

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oples, não sei se resolvi da melhor maneira, mas agora, estive verificando os dados e agora sim esta certo.

 

segue como ficou a parte de formatação dos valores.

 

function fDecimal($num) {
	if($num) {
		$n1 = str_replace(".","",$num);
		$n2 = str_replace(",",".",$n1);
		return number_format($n2, 2, ".", "");
	} else {
		return number_format(0, 2, ".", "");
	}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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