2013-03-15 134 views
1

我有一個表單,用戶在其中輸入某些信息,然後通過Javascript獲取一些信息。在SESSION中傳遞Javascript變量和PHP變量的混合

我想將信息從Javascript傳遞到另一頁。儘管在用戶輸入的形式中,還有一個輸入字段,我也想通過下一個屏幕。我知道我可以通過$ POST和session來傳遞這個Input字段,但這是我努力的Javascript字段。

這裏是我的形式(我會告訴一個字段,以不淹沒與代碼屏幕):

//I added this hidden field and it stopped my javascript form updating// 
<input id="amount" type="hidden"> 
//===========================================================// 
<input class="applyForm-input" id="amount" name="amount" type="text" autocomplete="off" maxlength="6" style="position:relative; left:200px; top:-24px;"> 

這裏是它的輸出通過Javascript:

<div class="loanForm-totalToBorrow v-number" id="amountdiv"> 

這裏我的這個特定領域的Javascript:

function updateCost() { 

var amount = parseFloat(document.getElementById("amount").value) || 0.00; 
    delivery = parseFloat(document.getElementById("delivery").value); 
     if(delivery !='select' && delivery) 
     { 
      delivery=parseFloat(delivery); 
     } 
     else 
     { 
      delivery= 0.00; 
     } 
    total = amount + delivery; 
    fixedrate = total/100 * 12.2; 
    grandtotal = fixedrate + total; 

document.getElementById("amountdiv").innerHTML = amount.toFixed(2); 

現在我知道PHP是serverside和Javascript是客戶端。那麼如何將這些數據傳遞給PHP變量。

在我的第二頁上,我想輸出一些會話。下面是一個例子:

<?php 
echo ' <tr class="blah1"> '; 
echo ' <td class="blah2">&#163;' . $_SESSION['amountdiv'] . ' </td> '; 
echo ' </tr> '; 
?> 

我已經看了,通過stackoverflow和人們提到隱藏的輸入字段。雖然,當我添加這些,我的Javascript停止工作。

+0

請檢查您的'輸入'沒有'價值'.... – Ankur 2013-03-15 15:16:34

回答

0

您可以在頁面加載時將一個php變量值分配給一個javascript變量。

$var = $_SESSION['session_var']; 

<script type="text/javascript"> 
var myVAr = <?php echo $var; ?>; 
</script> 
0

您在上面發佈了2個「輸入」字段。問題是,您的隱藏輸入與您的文本字段具有相同的id =「amount」。

id屬性的值必須在您的html頁面上是唯一的。

因此,我建議重命名隱藏的輸入字段的ID,您的JavaScript應該再次工作,您可以使用隱藏的輸入發佈到下一頁。

0

您可以使用jQuery的AJAX能力

$(document).ready(function(){ 
    $("#mysubmitbutton").click(function(){ 
    var amount = parseFloat(document.getElementById("amount").value) || 0.00; 
     delivery = parseFloat(document.getElementById("delivery").value); 
      if(delivery !='select' && delivery) 
      { 
       delivery=parseFloat(delivery); 
      } 
      else 
      { 
       delivery= 0.00; 
      } 
     total = amount + delivery; 
     fixedrate = total/100 * 12.2; 
     grandtotal = fixedrate + total; 
     .post("mysecondpage.php", {total: total, fixedrate: fixedrate, 
            grandtotal: grandtotal}); 
    }); 
}); 

以上抓住你的JavaScript變量,並將它們發佈到你想重定向到

<?php 

$total = $_POST["total"]; 
$fixedrate = $_POST["fixedrate"]; 
$grandtotal = $_POST["grandtotal"]; 

?> 

然後你可以抓住的轉移值PHP頁面

+0

嗨勞埃德,這不起作用。 – Janatan 2013-04-11 13:25:44