[英]Passing a mixture of Javascript variables and PHP variable in a SESSION
我有一個表單,用戶在其中輸入某些信息,然后他們通過Javascript取回一些信息。
我想將信息從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是服務器端的,而Javascript是客戶端的。 那么我如何將這些數據傳遞給PHP變量。
在第二頁上,我想輸出一些會話。 以下是一個示例:
<?php
echo ' <tr class="blah1"> ';
echo ' <td class="blah2">£' . $_SESSION['amountdiv'] . ' </td> ';
echo ' </tr> ';
?>
我查看了stackoverflow,並提到了隱藏的輸入字段。 雖然,當我添加這些時,我的Javascript停止運行。
您可以在頁面加載時將php變量值分配給javascript變量。
$var = $_SESSION['session_var'];
<script type="text/javascript">
var myVAr = <?php echo $var; ?>;
</script>
您在上方發布了2個“輸入”字段。 問題是,您的隱藏輸入與文本字段具有相同的id =“ amount”。
id屬性的值在整個html頁面中必須唯一。
因此,我建議重命名隱藏輸入字段的ID,並且您的JavaScript應該會再次運行,並且您可以使用隱藏輸入來發布到下一頁。
您可以使用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頁面
<?php
$total = $_POST["total"];
$fixedrate = $_POST["fixedrate"];
$grandtotal = $_POST["grandtotal"];
?>
然后,您可以獲取轉移的值
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.