php - 我如何从使用 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);
我的问题是,
是
$sta
节省价格的正确方法吗?如果没有,我可以在哪里保存选择表格中的产品价格?
显示2位小数的
number_format($totalprice,2);
正确方法是什么?
感谢您阅读我的代码!!
解决方案
您可以将价格保存在数组中。例如,您还可以从 JSON 文件或数据库中读取它。
价格永远不应该由用户发送。
如果你想显示价格是的,但如果你想继续计算价值,
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);
推荐阅读
- android - 从 google sheet 转换为 android strings file.xml
- android - 如何在多个片段中使用 TTS 实例?
- ruby-on-rails - 无法加载此类文件 -- webrick/httputils
- reactjs - getServerSideProps 访问当前浏览器 url
- python - 如何从代码而不是表单字段加载文件
- angular - 管道 rxjs 运算符如何可能受到后续运算符的返回值的影响?
- node.js - Windows_NT 10.0.18363
- reactjs - 我们可以在花括号内执行表达式,我们在 react 中传递 props 值吗
- php - phpmailer批量邮件发送期间出现无效邮件错误
- android-studio - 协程抛出异常时Logcat不显示错误信息(小米)