Ir ao conteúdo
  • Cadastre-se

PHP Receber altura do usuário no formato FLOAT.


Ir à solução Resolvido por Matheus Evandro Rech,

Posts recomendados

Olá, estou desenvolvendo um formulário html que calcula o imc em php.

Porém a formula só vai funcionar se o usuário digitar sua altura utilizando ponto (ex 1.80), se ele utilizar virgula ou número inteiro vai dar erro.

 

Como eu poderia travar a celula para que só receba a altura com o ponto e que no caso de o usuário digitar de outra forma emita uma resposta no próprio formulário pedindo para ele digitar da forma correta?

Link para o comentário
Compartilhar em outros sites

  • Moderador

@Jhon Macedo Se quiser usar a virgula e o ponto, vai precisar da intervenção do javascript. 

 

Mas é possível que você receba o dado com vírgula, e faça um explode e ai monta do jeito certo.

 

Exemplo:

 

//recebe  1,80
$altura = $_POST["altura"];

$separa_os_valores = explode(",", $altura);

//Retorna 1.80
$remonta_com_ponto = $separa_os_valores[0] . "." . $separa_os_valores[1];

Com isso você tem o valor com ponto, mesmo escrevendo a virgula.

Podes ainda, colocar um teste de IF,  SE tiver com virgula, faz a conversão, senão faz o cálculo direto.

Link para o comentário
Compartilhar em outros sites

  • 3 semanas depois...

Acho melhor fazer essa validação no cliente com javascript antes de mandar para o servidor. Esse campo pode receber virgula e ponto e você usa replace para deixar sempre com ponto. Validaria também o tamanho da string que deve ter 4 caracteres (3 números e uma virgula X,XX). Em caso de divergência, já informa o erro ao usuário antes de enviar ao servidor. Isso você faz em 2 minutos...

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...