PHP.EE FOORUM   
Nimi:   Pass:   Mäleta mind! 
   Teemad | php.ee esilehele | registreeri | Märgi kõik teemad loetuks | #php.ee Skype vestlus | RSS
UUS TEEMA  OTSI  Lehekülgi: 1
PHP's arvutab valesti.
Postitaja: PHP 2015-10-08 02:02:21
Kood selline: http://pastebin.com/yZWtd1uW

Küsimus, miks see kood ei suuda arvutada nt: 5,7 või 10,1. Alati arvutab 10 (peale , olevat arvu ei loe).
RE: PHP's arvutab valesti.
Postitaja: - 2015-10-08 09:08:31
TSITEERITUD:
Küsimus, miks see kood ei suuda arvutada nt: 5,7 või 10,1. Alati arvutab 10 (peale , olevat arvu ei loe).


Sest 5,7 pole number - numbris kasutatakse komakoha eraldajana punkti ning peaks olema 5.7

Sinu regex kontrollib vaid seda, et string algaks numbriga, seega 5,7 läbib kontrolli ning hoiatust ei kuvata. Arvutuste käigus teisendatakse see numbriks ning saadaksegi 5 või 10.

Googelda "regex is number" või kasuta PHP is_numeric().
RE: PHP's arvutab valesti.
Postitaja: - 2015-10-08 09:20:34
Ahjaa, üks võimalus on veel esimese asjna parameetris koma punktiga asendada: $val = str_replace(',', '.', $_POST['val']); Siis toimivad nii 5,7 kui 5.7 ning mõne tuhmima kasutaja jaoks on päev päästetud.
RE: PHP's arvutab valesti.
Postitaja: PHP 2015-10-08 15:52:09
TSITEERITUD:
Ahjaa, üks võimalus on veel esimese asjna parameetris koma punktiga asendada: $val = str_replace(',', '.', $_POST['val']); Siis toimivad nii 5,7 kui 5.7 ning mõne tuhmima kasutaja jaoks on päev päästetud.


Suured tänud!

Leheküljed: 1

©2002-2013 Martin Rebane & PHP.ee kaasautorid
  0.0782201290131