Daniel.Dj 0 Denunciar post Postado Julho 18, 2005 eae....tudo bllz?!tô fazendo um sistema de cotação de preços, e tem um campo na minha tabela que guarda o valor, e gostaria que esse campo fosse tipo moeda..como eu faço isso?! Compartilhar este post Link para o post Compartilhar em outros sites
youngrp 0 Denunciar post Postado Julho 18, 2005 Opa... Na estrutura do MySQL não tem campo moeda... Utilize um campo var char e o R$ você poe no código mesmo. Abraços. :D Compartilhar este post Link para o post Compartilhar em outros sites
Daniel.Dj 0 Denunciar post Postado Julho 18, 2005 Não esqueça de inserir no bd utilizando ponto (.) e não virgula (,) e na hora da visualização utlize a função number_format para formatar a variavel.. Qualquer duvida posta <{POST_SNAPBACK}> hmm....e como eu faria pra trocar a (,) pelo (.) na hora de inserir no banco?! Compartilhar este post Link para o post Compartilhar em outros sites
@beto 0 Denunciar post Postado Julho 18, 2005 use decimal, e o unico que da para colocar casa decimais.. http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Compartilhar este post Link para o post Compartilhar em outros sites
joaogil 1 Denunciar post Postado Janeiro 29, 2006 Valeu pela dica pessoal ! Seguindo as dicas de voces eu fiz assim: // tira os pontos(.) caso o usuário tenha colocado. Ex: "1.000" fica assim "1000" $valor = str_replace(".","",$valor);// troca a vírgula(,) decimal pelo ponto(.). Ex.: "1000,00" fica assim "1000.00"$valor = str_replace(",",".",$valor );// aí insere no BD// Depois pra mostrar$valor = number_format($valor,2,",",".");// Ficaria assim: "1.000,00" no formato brasileiro Compartilhar este post Link para o post Compartilhar em outros sites
Prog 183 Denunciar post Postado Janeiro 29, 2006 Melhor usar DECIMAL ou NUMERIC. A não ser que não seja do seu interesse realizar calculos com esses valores, usando VARCHAR, vai ter mais trabalho. Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Janeiro 29, 2006 é isso mesmo use DECIMAL 10,2 por exemplo e nunca esqueça cada campo no mysql existe uma finalidade, mas tem gente que só sabe usar varchar Compartilhar este post Link para o post Compartilhar em outros sites
joaogil 1 Denunciar post Postado Janeiro 30, 2006 Bom, eu sei que os tipos de campos do Mysql server pra vários tipos de dados, e eu uso vários !Só que eu me preocupei, neste caso, na formatação do número e os cálculos eu iria fazer com o PHP mesmo.Então eu posso usar o decimal mesmo e continuar usando a rotina de funções que mostrei acima ? Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Janeiro 30, 2006 pode o campo decimal nao aceita virgulas só ponto e você formata apenas para exibir mas usando o campo DECIMAL você tem vantagens, por exemplo se quiser fazer alguma operação matematica via sql você pode fazer porque o campo é proprio pra isso, agora se usar um varchar as funções do sql mysql nao irao funcionar, mesma coisa quando pessoas usam campo varchar pra salvar datas dai elas perdem todas as funções do mysql para tratamento de datas, como pesquisa por data, entre datas, somar subtrair datas etc... por isso que sempre falo usar sempre o campo certo, alem de certo o correto a pessoa só tem a ganhar Compartilhar este post Link para o post Compartilhar em outros sites
Alexmatrix 0 Denunciar post Postado Abril 21, 2011 pode o campo decimal nao aceita virgulas só ponto e você formata apenas para exibir mas usando o campo DECIMAL você tem vantagens, por exemplo se quiser fazer alguma operação matematica via sql você pode fazer porque o campo é proprio pra isso, agora se usar um varchar as funções do sql mysql nao irao funcionar, mesma coisa quando pessoas usam campo varchar pra salvar datas dai elas perdem todas as funções do mysql para tratamento de datas, como pesquisa por data, entre datas, somar subtrair datas etc... por isso que sempre falo usar sempre o campo certo, alem de certo o correto a pessoa só tem a ganhar Concordo completamente. Entretanto, quando vou salvar os valores com o ponto, o numero sempre fica sem o ponto. ou seja se o valor for Decimal = 2.54; no banco fica => 254.00. sei que dá pra resolver salvando como string, mas queria salvar como um valor decimal pra poder fazer operaçoes matematicas. Compartilhar este post Link para o post Compartilhar em outros sites