HTML Web サイトに追加する簡単なスクリプトを作成しようとしています。
ユーザーが入力した数量に基づいて価格を計算する必要があります。
たとえば、1 ~ 1000 の値は 1.50 を掛けて表示され、1001 ~ 5000 は 1.20 を掛けて表示され、5001 ~ 10000 は 1 を掛けて表示されます。 "。
私はphpでこれをやろうとしましたが、成功しませんでした。
HTML Web サイトに追加する簡単なスクリプトを作成しようとしています。
ユーザーが入力した数量に基づいて価格を計算する必要があります。
たとえば、1 ~ 1000 の値は 1.50 を掛けて表示され、1001 ~ 5000 は 1.20 を掛けて表示され、5001 ~ 10000 は 1 を掛けて表示されます。 "。
私はphpでこれをやろうとしましたが、成功しませんでした。
if
ボールトを確認し、計算された値を表示するために使用できます。
if($input <= 1000)
{
echo $input * 1.5;
}
elseif($input <= 5000)
{
echo $input * 1.2;
}
elseif($input <= 10000)
{
echo $input;
}
else
{
echo "Must be below 10000";
}
IF ステートメントですべての条件を定義する代わりに、すべての段階で定数を定義することをお勧めします。
<form action="" method="post">
<input type="text" name="qnt" />
<input type="submit" />
</form>
<?php
define('MIN_STAGE', 1);
define('MAX_STAGE', 3);
define('STAGE_1_MIN', 0);
define('STAGE_1_MAX', 1000);
define('STAGE_1_MULTIPLIER', 1.50);
define('STAGE_2_MIN', STAGE_1_MAX);
define('STAGE_2_MAX', 5000);
define('STAGE_2_MULTIPLIER', 1.20);
define('STAGE_3_MIN', STAGE_2_MAX);
define('STAGE_3_MAX', 10000);
define('STAGE_3_MULTIPLIER', 1);
for($i = MIN_STAGE; $i <= MAX_STAGE; $i++) {
if ($_POST['qnt'] > constant("STAGE_".$i."_MIN") && $_POST['qnt'] <= constant("STAGE_".$i."_MAX")) {
echo $_POST['qnt'] * constant("STAGE_".$i."_MULTIPLIER");
}
elseif ($_POST['qnt'] < constant("STAGE_".MIN_STAGE."_MIN") || $_POST['qnt'] > constant("STAGE_".MAX_STAGE."_MAX")) {
die ('Must be between ' . constant("STAGE_".MIN_STAGE."_MIN") . ' AND ' . constant("STAGE_".MAX_STAGE."_MAX"));
}
}