帮楼主升级了一下代码: demo链接 修复了: 1、历史购买价格不能带小数的bug 2、剩余价值不足一月计算结果为0的bug 3、计算结果和计算过程均为年付的bug 增加了: 1、付款周期半年的选项 2、当前日期自动填写 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>VPS/VDS/独服-剩余价值计算器V3.0</title> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css"> </head> <body> <div class="container mt-5"> <h1 class="mb-4">VPS/VDS/独服-剩余价值计算器</h1> <form method="post"> <div class="form-group"> <label for="purchasePrice">历史购买价格:</label> <input type="number" class="form-control" id="purchasePrice" name="purchasePrice" step = "0.01" required> </div> <div class="form-group"> <label for="currentDate">当前日期:</label> <input type="date" class="form-control" id="currentDate" name="currentDate" value="<?php echo date("Y-m-d")?>" required> </div> <div class="form-group"> <label for="expiryDate">到期日期:</label> <input type="date" class="form-control" id="expiryDate" name="expiryDate" required> </div> <div class="form-group"> <label for="paymentFrequency">付款周期:</label> <select class="form-control" id="paymentFrequency" name="paymentFrequency" required> <option value="yearly">年付</option> <option value="halfyearly">半年付</option> <option value="quarterly">季付</option> <option value="monthly">月付</option> </select> </div> <button type="submit" class="btn btn-primary">计算剩余价值</button> </form> <?php if ($_SERVER["REQUEST_METHOD"] === "POST") { $purchasePrice = floatval($_POST["purchasePrice"]); $currentDate = strtotime($_POST["currentDate"]); $expiryDate = strtotime($_POST["expiryDate"]); $paymentFrequency = $_POST["paymentFrequency"]; $remainingMonths = round(($expiryDate - $currentDate) / (30 * 24 * 60 * 60),2); if ($paymentFrequency === "quarterly") { $remainingMonths = round(($remainingMonths / 3),2); } elseif ($paymentFrequency === "yearly") { $remainingMonths = round(($remainingMonths / 12),2); } elseif ($paymentFrequency === "halfyearly") { $remainingMonths = round(($remainingMonths / 6),2); } $remainingValue = $purchasePrice / 1 * $remainingMonths; echo '<div class="mt-4">'; echo '<h3>计算结果:</h3>'; echo '<p>历史购买价格:$' . $purchasePrice . '</p>'; echo '<p>剩余价值计算周期:' . $paymentFrequency . '</p>'; echo '<p>剩余价值:$' . $remainingValue . '</p>'; echo '</div>'; echo '<div class="mt-4">'; echo '<h3>计算过程:</h3>'; echo '<div class="accordion" id="calculationProcess">'; echo '<div class="card">'; echo '<div class="card-header" id="headingOne">'; echo '<h2 class="mb-0">'; echo '<button class="btn btn-link" type="button" data-toggle="collapse" data-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne">'; echo '展开计算过程'; echo '</button>'; echo '</h2>'; echo '</div>'; echo '<div id="collapseOne" class="collapse" aria-labelledby="headingOne" data-parent="#calculationProcess">'; echo '<div class="card-body">'; echo '<p>剩余月份:' . $remainingMonths . ' 个月</p>'; if ($paymentFrequency === "quarterly") { echo '<p>剩余价值 = 历史购买价格 / 3 * 剩余月份</p>'; echo '<p>剩余价值 = $' . $purchasePrice . ' / 3 * ' . $remainingMonths . ' = $' . $remainingValue . '</p>'; } elseif ($paymentFrequency === "yearly") { echo '<p>剩余价值 = 历史购买价格 / 12 * 剩余月份</p>'; echo '<p>剩余价值 = $' . $purchasePrice . ' / 12 * ' . $remainingMonths . ' = $' . $remainingValue . '</p>'; } elseif ($paymentFrequency === "halfyearly") { echo '<p>剩余价值 = 历史购买价格 / 6 * 剩余月份</p>'; echo '<p>剩余价值 = $' . $purchasePrice . ' / 6 * ' . $remainingMonths . ' = $' . $remainingValue . '</p>'; }else{ echo '<p>剩余价值 = 历史购买价格 / 1 * 剩余月份</p>'; echo '<p>剩余价值 = $' . $purchasePrice . ' / 1 * ' . $remainingMonths . ' = $' . $remainingValue . '</p>'; } echo '</div>'; echo '</div>'; echo '</div>'; echo '</div>'; echo '</div>'; } ?> </div> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script> </body> </html>
不错
好东西,这样心里有数了
你自己好歹也搭个页面出来啊,到时候肯定会有很多人收藏的,这将会带来很多流量。
手机里乘除法不就算出来了吗
帮楼主升级了一下代码:
demo链接
修复了:
1、历史购买价格不能带小数的bug
2、剩余价值不足一月计算结果为0的bug
3、计算结果和计算过程均为年付的bug
增加了:
1、付款周期半年的选项
2、当前日期自动填写
大佬来了,顶上去
@sunfei #25
@sunfei #25
试了下输出计算结果好像有点问题?
@juhua #27 还有个bug,已经修复
点赞收藏加鸡腿
溜得飞起