, (čárka) v číslech v PHP

Vývojová prostředí, aplikace, skripty, http://www... síťové programy, internet, sdílení...
Odpovědět
arxeiss
Začátečník
Začátečník
Uživatelský avatar
Registrován: 19. črc 2008
Bydliště: Krmelín (předměstí Ostravy)
Kontaktovat uživatele:

, (čárka) v číslech v PHP

Příspěvek od arxeiss »

Kámoš chodí do kurzu PHP a měli za úkol udělat kalkulačku BMI. A poprosil mě abych mu udělal kontrolu aby lidi nezadávali jiné než číselné hodnoty atd... a pak nastal ten problém, co když on zadá váhu 60,5 kg tak PHP to nevezme, proto jsem na to udělal skript který to řeší, ovšem v tu chvíli mě nanapadlo něco lehčího než toto:

Kód: Vybrat vše

if(isset($_POST['submit'])){
    $vyska = $_POST['vyska'];
    $vaha = $_POST['vaha'];   
    
    if(is_string($vaha) and !is_numeric($vaha)){
      $no_vaha = explode(",", $vaha);
      $kolik = strlen($no_vaha['1']);
      $deleno=1;
      for($i=0;$i<$kolik;$i++){
        $deleno=$deleno*10;
      }
      $vaha = $no_vaha['0'] + ($no_vaha['1'] / $deleno);
    }else{
      settype($vaha, "integer");
    }       
    if($_POST['vyska']=='' or $_POST['vaha']==''){
      echo "Musíte vyplnit všechna pole";
    }elseif(!is_numeric($vyska) or !is_numeric($vaha)){
      echo "Pole mohou obsahovat pouze čísla, a u výšky nezadávejte desetinné čísla";
    }elseif($vyska<=0 or $vaha<=0){
      echo "Čísla musejí být větší než 0";
    }else{
      settype($vyska, "integer");
      $vyska=$vyska/100;
      $bmi = $vaha / ($vyska * $vyska);
      echo "<h1>Vaše BMI je: ".$bmi."</h1><br>Vyska:".$vyska."<br>Vaha:".$vaha;
    }
  }
A ptám se jestli to jde i lehčeji.
PC : CPU: C2D E5200 2500Mhz @ 3750Mhz a AC Freezer 7PRO MB: Gigabyte GA-P31-DS3L rev.2,1 GPU: ATI Radeon 3650HD 256MB RAM: A-Data Vitesta 2x2GB Zdroj: Forton OEM 400W HDD: Samsung F2 500GB
Netbook : Asus EEE CPU: Intel Atom N270 1,6GHz RAM: A-Data 2GB HDD: 250GB 5400ot/min
fobos
Začátečník
Začátečník
Uživatelský avatar
Registrován: 26. zář 2006

Re: , (čárka) v číslech v PHP

Příspěvek od fobos »

Ja by som to riešil nasledovne

Kód: Vybrat vše

<form method="post">
  <input type="text" name="ciarka">
  <input type="submit" value="OK">
</form>

<?php 

$ciarka=StrTr($_POST['ciarka'],",",".");

echo $ciarka;

?>
 
V okamihu , keď do inputu napíše čiarku, tak ju prehodí (StrTr) do bodky
arxeiss
Začátečník
Začátečník
Uživatelský avatar
Registrován: 19. črc 2008
Bydliště: Krmelín (předměstí Ostravy)
Kontaktovat uživatele:

Re: , (čárka) v číslech v PHP

Příspěvek od arxeiss »

aha, Tuto funkci jsem jěště nepoužil tak mě to nenapadlo, ale jistě, je to ono. Díky
PC : CPU: C2D E5200 2500Mhz @ 3750Mhz a AC Freezer 7PRO MB: Gigabyte GA-P31-DS3L rev.2,1 GPU: ATI Radeon 3650HD 256MB RAM: A-Data Vitesta 2x2GB Zdroj: Forton OEM 400W HDD: Samsung F2 500GB
Netbook : Asus EEE CPU: Intel Atom N270 1,6GHz RAM: A-Data 2GB HDD: 250GB 5400ot/min
Odpovědět

Zpět na „Programování a web“