将HTML函数转换为PHP脚本。 (两个选择值相乘)

问题描述:

我的工作是将以下JavaScript函数转换为PHP并显示正确的结果。你如何使用PHP来乘以NumA和NumB选择选项的两个值?折扣必须显示在折扣输入框中,以及总输入框中的总计。我在创建一个PHP脚本时遇到了困难,该脚本将两个选定的值相乘并将它们相乘,同时在下面的框中显示两个结果。将HTML函数转换为PHP脚本。 (两个选择值相乘)

这是我需要转换为PHP的函数的HTML代码。

<!DOCTYPE html> 
<html> 
<head> 
    <title> 
    </title> 
<script> 
var numA = 0; 
function totalA(valA) { 
if (valA) { 
    numA = Number(valA);} 
var disc = numB*numA; 
var totalCost = (numA - disc); 
    document.getElementById("total").value = "$" + totalCost.toFixed(2); 
    document.getElementById("discount").value = "$" + disc.toFixed(2);} 
var numB = 0; 
function totalB(valB) { 
if (valB) { 
    numB = Number(valB);} 
var disc = numB*numA; 
var totalCost = (numA - disc); 
    document.getElementById("total").value = "$" + totalCost.toFixed(2); 
    document.getElementById("discount").value = "$" + disc.toFixed(2);} 
</script>  

</head> 
<div align="center"> 
<br> 
<form name id="Main"> 
<select id="numA" placeholder="Please select a service" onchange="totalA(this.value);"> 
    <option value="" disabled selected>Select your service</option> 
    <option value="125">Makeover</option> 
    <option value="60">Hair Styling</option> 
    <option value="35">Manicure</option> 
    <option value="200">Permanent Makeup</option> 
</select> 
<br><br> 
<select id="NumB" placeholder="Please select the discount" onchange="totalB(this.value);"> 
    <option value="" disabled selected>Select the discount</option> 
    <option value="0">0%</option> 
    <option value=".1">10%</option> 
    <option value=".2">20%</option> 
    </select> 
    <br><br> 
<td>Discount Coupon: <input id="discount" name="showTotal" type="text" value="$0.00" size="10" readonly/></td> 
<td>Grand Total: <input id="total" name="showTotal" type="text" value="$0.00" size="10" readonly=""/></td> 
<br><br> 
</form> 
<hr> 
</div> 
</html> 
+4

您尝试过哪些PHP? – j08691

+0

@ j08691我试过对两个变量进行索引并使用$ result变量将它们相乘。我不确定如何让结果正确显示。 – lizardwizard

+0

(javascript)** 1 **使用FormData对象收集表单的数据。 ** 2 **使用AJAX将formdata提交给php文件。 (PHP)** 3 **检索传递给php的变量,并对它们进行计算。 ** 4 **打印结果。 (javascript)** 5 **获取ajax调用的responseText(如果成功)** 6 **将检索到的文本复制到正确的输出元素。 – enhzflep

首先更新您的形式:

<form action="" method="post"> 
    <select name="service" id="service" placeholder="Please select a service"> 
     <option value="" disabled selected>Select your service</option> 
     <option value="125">Makeover</option> 
     <option value="60">Hair Styling</option> 
     <option value="35">Manicure</option> 
     <option value="200">Permanent Makeup</option> 
    </select> 
    <br><br> 
    <select name="discount" id="discount" placeholder="Please select the discount"> 
     <option value="" disabled selected>Select the discount</option> 
     <option value="0">0%</option> 
     <option value=".1">10%</option> 
     <option value=".2">20%</option> 
    </select> 
    <br><br> 
    <button type="submit">Calculate</button> 
</form> 

处理表单提交的PHP(计算总成本&优惠):

<?php 
    $service = isset($_POST['service']) ? $_POST['service'] : 0; 
    $discount = isset($_POST['discount']) ? $_POST['discount'] : 0; 
    $total_discount = number_format($discount * $service, 2); 
    $total_cost = number_format($service - $total_discount, 2); 
?> 

最后,显示总成本&优惠:

<p>Discount Coupon: <input id="discount" type="text" value="&dollar;<?php echo $total_discount; ?>"/></p> 
<p>Grand Total: <input id="total" type="text" value="&dollar;<?php echo $total_cost; ?>"/></p> 
+0

你有没有得到它与这个解决方案? – lizardwizard

+0

是的,完整的代码在这里:http://pastebin.com/kwv7exSG – xcvd