2016-07-03 5 views
0

私は最近PHPを開始しましたが、その結果はechoでした。どんな助けもありがとう。ユーザー入力に基づいて計算結果を出力しようとするとエラーが発生しました

<html> 
    <head> 
    <style> 
    input[type=submit]{ 
     background-color: #4CAF50; 
     border: none; 
     color: white; 
     padding: 16px 32px; 
     text-decoration: none; 
     margin: 4px 2px; 
     cursor: pointer; 
    } 
    input[type=text]{ 
     border: 3px solid black; 
    } 
    </style> 
    </head> 

    <body> 
    <form action="fitness1.php" method="post"> 
    <b>weight:</b> <input type="text" name="weight"><br> 
    <br> 
    <b>height:<b> <input type="text" name="height"><br> 
    <br> 
    <input type="submit"> 
    </body> 
</html> 

これは、PHPのコードです:

<html> 
<body> 
<?php 

$WEight = $_Post['weight']; 
$HEight = $_post['height']; 

if (is_numeric($WEight)&& is_numeric($HEight)){ 

    $bmi= $WEight/$HEight * $HEight; 
    }  

echo ("$bmi"); 


else { 
    echo "please enter your weight and height"; 
} 
?> 
</body> 
</html> 
+0

エラーは何ですか? – Will

+0

構文解析エラー:構文エラー、予期しない '}'、予期している '、'または ';' G:\ wamp \ www \ test \ fitness1.php(ライン19) –

+0

エコーBMI行がその行の後に来る前に、中括弧を移動します。 –

答えて

2

PHPの変数の問題の場合。あなたはこのを探しています:if (...) { ... }ブロック内であることをごechoニーズ

if (is_numeric($WEight)&& is_numeric($HEight)) { 
    $bmi = $WEight/$HEight * $HEight; 
    echo $bmi; 
} else { 
    echo "please enter your weight and height"; 
} 

:次に

$WEight = $_POST['weight']; 
$HEight = $_POST['height']; 

、これは我々が使用するロジックです。

編集

要求されたとして、ここで私はそれを改善する方法は次のとおりです。

HTML:

<html> 
    <head> 
     <style> 
     input[type=submit]{ 
      background-color: #4CAF50; 
      border: none; 
      color: white; 
      padding: 16px 32px; 
      text-decoration: none; 
      margin: 4px 2px; 
      cursor: pointer; 
     } 
     input[type=text]{ 
      border: 3px solid black; 
     } 
     </style> 
    </head> 

    <body> 
     <form action="fitness1.php" method="post" /> 
     <b>Weight:</b> <input type="text" name="weight" /><br /> 
     <br /> 
     <b>Height:<b> <input type="text" name="height" /><br /> 
     <br /> 
     <input type="submit" /> 
    </body> 
</html> 

PHP:エラーメッセージの

<html> 
    <body> 
<?php 

$weightInKg = (int) $_POST['weight']; 
$heightInCm = (int) $_POST['height']; 

if ($heightInCm && $weightInKg) { 
    $bmi = $weightInKg/pow($heightInCm, 2); 
    echo "Your BMI is ${bmi}."; 
} else { 
    echo "Please enter your height and weight as a number greater than 0."; 
} 
?> 
    </body> 
</html> 
+0

入力のおかげでありがとう –

+0

あなたはこれに近づける方法を示すことができます –

+0

問題ないです、喜んで助けてください。あなたがまだそれを働かせることができない場合、コメント。 – Will

0

主な問題があります:

echo("$bmi"); // this is wrong you don't need brackets. 

エラーの理由ですが、条件であれば内部のエコー$ BMIを移動することをお勧めまたは他$ BMIを初期化するかどうそれは行かない場合は、未定義の変数のエラーを取得することができます

echo $bmi; 

でこれを置き換えますif条件を介して。

+0

5行目と6行目と10行目にエラーが表示され、PHPコードを書くことができます。私にとっては –

+0

何が新しいエラーですか? –

+0

行5の未定義変数6 –

関連する問題