簡體   English   中英

如何使用 php 從 select 的用戶輸入計算總價格

[英]How can i calculate the total price from the user input from select from using php

我想計算來自 $_SESSION 的用戶輸入的總價格。 但是,我的代碼似乎有問題。

 <label>Seats STA:</label>
        <select name="seats[STA]" id="STA">
            <option value="0">0</option>
            <option value="1">1</option>
            <option value="2">2</option>
            <option value="3">3</option>
            <option value="4">4</option>
            <option value="5">5</option>
            <option value="6">6</option>
            <option value="7">7</option>
            <option value="8">8</option>
            <option value="9">9</option>
            <option value="10">10</option>
        </select>
        <span class="error">* Please select atleast 1 seat <?php echo $seatErr ;?></span>

$_SESSION['seats']['STA']=$_POST['seats']['STA'];

$sta = 15;
$stp = 5;
$stc = 7.5;
$fca = 30;
$fcp = 20;
$fcc = 15;
$totalamount = "0.0";


$totalamount =  $_SESSION['seats']['STA'] * $sta +
                $_SESSION['seats']['STP'] * $stp +
                $_SESSION['seats']['STC'] * $stc +
                $_SESSION['seats']['FCA'] * $fca +
                $_SESSION['seats']['FCP'] * $fcp +
                $_SESSION['seats']['FCC'] * $fcc;

$tax = 0.1;

$totalprice = $totalamount * (1+$tax);                

number_format($totalprice,2);

我的問題是,

  1. $sta是節省價格的正確方法嗎?

  2. 如果沒有,我在哪里可以保存 select 表格中的產品價格?

  3. number_format($totalprice,2); 顯示2位小數的正確方法?

感謝您閱讀我的代碼!!

  1. 您可以將價格保存在數組中。 例如,您還可以從 JSON 文件或數據庫中讀取此信息。

  2. 價格永遠不應該由用戶發送。

  3. 如果你想顯示價格是的,但如果你想繼續計算價值, round($total_price, 2)是更合適的方法。

代碼:

$_PRICES = array(
    "STA" => 15,
    "STP" => 5,
    "STC" => 7.5,
    "FCA" => 30,
    "FCP" => 20,
    "FCC" => 15
);

$total_price = 0;

foreach ($_SESSION['seats'] as $item => $amount) {
    $price = $_PRICES[$item];
    if ($price != null) {
        $total_price += $amount * $price;
    }
}

$tax = 0.1;

$total_price *= 1+$tax;

echo number_format($total_price,2);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM