2017-10-16 44 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>