2015-09-25 48 views
1

我想從表單發送數據使用PHP腳本的郵件。 我的問題是,我有跨的是由JavaScript填充,但此跨度的值不是使用post函數發送的。發送範圍值到PHP腳本使用後

QtyA = 0; 
PrcA = 15; 
document.getElementById("product1").innerHTML = PrcA; 

<form method="POST" action="form-to-email.php" name="ofrm"> 

    <table border="0" cellpadding="0" width="550" id="table1"> 
     <tr> 
      <td width="250">Product1</td> 
      <td align="center" width="100"> 
      <input type="text" name="qtyA" size="5" tabindex="5" onchange="calculate()"/></td> 
      <td align="right" width="60"><span id="product1" name="PrcA"/></span></td> 
      <td align="right" width="140"> 
      <input type="text" name="totalA" size="12" tabindex="99" onchange="calculate()"/></td> 
     </tr> 
</table> 

我試着用

<input type="text" name="PrcA" id="product1" size="5" tabindex="5" onchange="calculate()"/> 

但輸入字段不是由JavaScript

PHP

..... 

    $qtyA = $_POST['qtyA']; 
    $PrcA = $_POST['PrcA']; 
    ... 
    $email_body = "$qtyA $PrcA". 

變量$ QtyA被送到填充更換跨度,但$ PRCA不是

謝謝

+0

你真的不應該使用的表單元素中的''

...標籤 –

+0

感謝紙條,我想我會嘗試改變這種在未來清理css也 – ivanz

+0

,如果你正在測試,你總是可以調用'var_dump($ _ POST)'。 –

回答

2

也將該值放在隱藏字段中。

試試這個:

QtyA = 0; 
PrcA = 15; 
document.getElementById("product1").innerHTML = PrcA; 
document.getElementById("PrcA").value = PrcA; 

<form method="POST" action="form-to-email.php" name="ofrm"> 
<input type="hidden" value="" name="PrcA" id="PrcA" /> 

<table border="0" cellpadding="0" width="550" id="table1"> 
    <tr> 
     <td width="250">Product1</td> 
     <td align="center" width="100"> 
     <input type="text" name="qtyA" size="5" tabindex="5" onchange="calculate()"/></td> 
     <td align="right" width="60"><span id="product1" name="PrcA" /></span></td> 
     <td align="right" width="140"> 
     <input type="text" name="totalA" size="12" tabindex="99" onchange="calculate()"/></td> 
    </tr> 

+1

應該不是這個'be''而不是? – user5173426

+1

是的,謝謝。添加它。 –

+1

name屬性是需要的,因爲當表單將被提交時,元素傳遞元素的名稱不是id –