Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Inserimento numeri decimali in input type="number"

    Ciao a tutti.
    Sto impazzendo per trovare la risposta al mio problema. Ve lo illustro.
    Ho creato un form per fare una semplice operazione matematica che fa girare uno script php che esegue il calcolo. Per il campo di input ho usato l'elemento input con l'attributo type"number" utilizzando anche step=any per permettere l'immissione di tutti i numeri decimali.
    Ora ho notato che se immetto un numero con il punto come separatore dei decimali (sempio 12.35) lo script funziona bene. Se invece immetto un numero utilizzando la virgola come separatore (esempio 12,35) allo script mi sono accorto che arriva solo il numero intero senza i decimali e quindi il risultato del calcolo esce sbagliato.
    Come posso fare per ovviare a questo problema?
    Devo operare sull'html e quindi cambiare qualcosa sul form di inserimento dati o sul codice php che fa il calcolo?
    Grazie a tutti per il vostro aiuto che vorrete darmi.

    Ciao
    Jerry Lee Lewis

  2. #2
    Quote Originariamente inviata da JerryLeeLewis Visualizza il messaggio
    Ciao a tutti.
    Sto impazzendo per trovare la risposta al mio problema. Ve lo illustro.
    Ho creato un form per fare una semplice operazione matematica che fa girare uno script php che esegue il calcolo. Per il campo di input ho usato l'elemento input con l'attributo type"number" utilizzando anche step=any per permettere l'immissione di tutti i numeri decimali.
    Ora ho notato che se immetto un numero con il punto come separatore dei decimali (sempio 12.35) lo script funziona bene. Se invece immetto un numero utilizzando la virgola come separatore (esempio 12,35) allo script mi sono accorto che arriva solo il numero intero senza i decimali e quindi il risultato del calcolo esce sbagliato.
    Come posso fare per ovviare a questo problema?
    Devo operare sull'html e quindi cambiare qualcosa sul form di inserimento dati o sul codice php che fa il calcolo?
    Grazie a tutti per il vostro aiuto che vorrete darmi.

    Ciao
    Jerry Lee Lewis
    In PHP non puoi usare le virgole come separatore per i decimali, quando fai le operazioni matematiche devi sostituire le virgole con i punti:
    Codice PHP:
    $float=str_replace(',','.',$_POST['dato']); 

  3. #3
    Luca, ti ringrazio tanto per il tuo aiuto.
    Ora sono riuscito a risolvere il mio problema.
    Grazie ancora!
    Ciao

    JerryLeeLewis

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.