2017-10-16 127 views
0

我制作一个基于价目表的计算PHP脚本。我的脚本功能强大,但问题是:我必须直接在源代码中输入值。我希望为最终用户提供使用我的脚本而不需要任何代码的机会,只需填写html表单即可。如何在html表格上执行一个计算php脚本

我很难链接我的php脚本在窗体上进行计算。

娄我的源代码:

  1. FORM

    <center> 
        <form action="samepage.php" method="post"> 
        <input type="text" name="amount" value="0"/>F 
        <input name="button" type="submit" id="button" value="CALCULATE" />   
        </form> 
    
        <br> 
    
  2. PHP脚本

    相应的金额,你必须支付:
    //如何remplace 500价值具有表格价值?

    //价目表PHP脚本

    <?php 
    if($montant <= 5000){ // If the amount are <= to 500, 200 must add 
        echo $montant + 200; 
    F </h2> 
        </center> 
    

    我需要你的帮助,在此先感谢!


我很难将我的PHP脚本的形式,以使这种计算。

+0

如果计算是基于以上。如果() - 否则()块,然后可以也可以用Javascript的hrlp来完成。 –

回答

0

如果php代码在同一页上,那么你需要这样做。

<center> 
     <form action="" method="POST"> 
      <input type="text" name="amount" placeholder="0" />F 
      <input name="submit" type="submit" value="CALCULATE"/> 
     </form> 
    <br> 
    <strong>Corresponding your Amount, YOU MUST PAY: </strong><br><h2> 
     <?php 

     if (isset($_POST['submit'])){ 
      $montant = $_POST['amount']; 
      if ($montant <= 5000) { 
       echo $montant + 200; 
      } else 
      if ($montant <= 10000) { 
       echo $montant + 400; 
      } else 
      if ($montant <= 15000) { 
       echo $montant + 600; 
      } else 
      if ($montant <= 25000) { 
       echo $montant + 900; 
      } else 
      if ($montant <= 35000) { 
       echo $montant + 1100; 
      } else 
      if ($montant <= 50000) { 
       echo $montant + 1200; 
      } else 
      if ($montant <= 75000) { 
       echo $montant + 1700; 
      } else 
      if ($montant <= 100000) { 
       echo $montant + 2000; 
      } else 
      if ($montant <= 150000) { 
       echo $montant + 2200; 
      } else 
      if ($montant <= 200000) { 
       echo $montant + 2400; 
      } else 
      if ($montant <= 250000) { 
       echo $montant + 2900; 
      } else 
      if ($montant <= 300000) { 
       echo $montant + 3900; 
      } else 
      if ($montant <= 400000) { 
       echo $montant + 4900; 
      } else 
      if ($montant <= 200000) { 
       echo $montant + 2400; 
      } else 
      if ($montant <= 750000) { 
       echo $montant + 7400; 
      } else 
      if ($montant <= 1000000) { 
       echo $montant + 9900; 
      } else 
      if ($montant <= 2000000) { 
       echo $montant + 14900; 
      } else 
      if ($montant <= 3000000) { 
       echo $montant + 19900; 
      }else{ 

      } 
     } 
?> 
     F</h2> 
</center> 
+0

非常感谢你Ramu!我有2天前的这个问题! –

+0

此外,如果PHP代码在另一页上,则使用哪些代码? –

0

如果你回发到同一页,你可以使用以下命令:

<?php if ($_POST['amount']) { 
     $montant = (float) $_POST['amount']; // Number cast for security, use (int) to remove decimals 
    } else { 
     $montant = 500; 
    } // How to remplace 500 value on the form value ?> 

这也可以在速记进行如下:

<?php $montant = $_POST['amount'] ? (float) $_POST['amount'] : 500; ?> 

我知道你没”但是你也可以用几种方法简化你的if/else集合,比如使用一个数组然后循环它:

<?php $vals = array(3000000 => 19900, 2000000 => 14900, 1000000 => 9900); //etc 
foreach ($vals as $total => $additional) { 
    // Working down from highest to lowest until we match 
    if ($montant <= $total) { 
     $montant += $additional; 
     break; // Exit when found 
    } 
} ?> 
+0

感谢您的支持!现在我想在第2页上执行相同的脚本。第一页包含表单,第二页包含PHP脚本。我的/其他收藏很容易理解,我继续使用它。我必须做哪些修改才能在第2页上执行相同的脚本? –

1

大家好,非常感谢您的帮助!

现在我想在2页上执行相同的脚本。

第一页包含表单,第二页包含PHP脚本。

我的/其他收藏很容易理解,我继续使用它。我必须做哪些修改才能在第2页上执行相同的脚本?

我认为要做到这一点:

第一页:

<form action="next-page.php" method="POST"> 
      <input type="text" name="amount" placeholder="0" />F 
      <input name="submit" type="submit" value="CALCULATE"/> 
     </form> 

第二页

<strong>Corresponding your Amount, YOU MUST PAY: </strong><br><h2> 
     <?php 

     if (isset($_POST['submit'])){ 
      $montant = $_POST['amount']; 
      if ($montant <= 5000) { 
       echo $montant + 200; 
      } else 
      if ($montant <= 10000) { 
       echo $montant + 400; 
      } else 
      if ($montant <= 15000) { 
       echo $montant + 600; 
      } else 
      if ($montant <= 25000) { 
       echo $montant + 900; 
      } else 
      if ($montant <= 35000) { 
       echo $montant + 1100; 
      } else 
      if ($montant <= 50000) { 
       echo $montant + 1200; 
      } else 
      if ($montant <= 75000) { 
       echo $montant + 1700; 
      } else 
      if ($montant <= 100000) { 
       echo $montant + 2000; 
      } else 
      if ($montant <= 150000) { 
       echo $montant + 2200; 
      } else 
      if ($montant <= 200000) { 
       echo $montant + 2400; 
      } else 
      if ($montant <= 250000) { 
       echo $montant + 2900; 
      } else 
      if ($montant <= 300000) { 
       echo $montant + 3900; 
      } else 
      if ($montant <= 400000) { 
       echo $montant + 4900; 
      } else 
      if ($montant <= 200000) { 
       echo $montant + 2400; 
      } else 
      if ($montant <= 750000) { 
       echo $montant + 7400; 
      } else 
      if ($montant <= 1000000) { 
       echo $montant + 9900; 
      } else 
      if ($montant <= 2000000) { 
       echo $montant + 14900; 
      } else 
      if ($montant <= 3000000) { 
       echo $montant + 19900; 
      }else{ 

      } 
     } 
?> 
     F</h2> 
</center>