我是php的新手,我正在尝试制作一个javascript数组。但我不知道如何将其保存在数据库中。当我尝试保存值时,总是0保存在数据库中。
使用Javascript:
<script type="text/javascript">
function tot(elem) {
var d=document.getElementById("total").value;
var h=(total+vat5+vat12_5)-cash_discount;
document.getElementById("grand_total").value = h;
}
var total = 0;
function getValues() {
var qty = 0;
var rate = 0;
var obj = document.getElementsByTagName("input");
for(var i=0; i<obj.length; i++){
if(obj[i].name == "qty[]"){var qty = obj[i].value;}
if(obj[i].name == "rate[]"){var rate = obj[i].value;}
if(obj[i].name == "amt[]"){
if(qty > 0 && rate > 0)
{obj[i].value = qty*rate;total+= (obj[i].value*1);}
else{obj[i].value = 0;total+=(obj[i].value*1);}
}
}
document.getElementById("total").value = total*1;
total=0;
}
</script>
<script type="text/javascript">
function addRow(tableID) {
var table = document.getElementById(tableID);
var rowCount = table.rows.length;
var row = table.insertRow(rowCount);
var colCount = table.rows[0].cells.length;
for(var i=0; i<colCount; i++) {
var newcell = row.insertCell(i);
newcell.innerHTML = table.rows[0].cells[i].innerHTML;
//alert(newcell.childNodes);
switch(newcell.childNodes[0].type) {
case "text":
newcell.childNodes[0].value = "";
break;
case "checkbox":
newcell.childNodes[0].checked = false;
break;
case "select-one":
newcell.childNodes[0].selectedIndex = 0;
break;
}
}
}
function deleteRow(tableID)
{
try
{
var table = document.getElementById(tableID);
var rowCount = table.rows.length;
for(var i=0; i<rowCount; i++)
{
var row = table.rows[i];
var chkbox = row.cells[0].childNodes[0];
if (null != chkbox && true == chkbox.checked)
{
if (rowCount <= 1)
{
alert("Cannot delete all the rows.");
break;
}
table.deleteRow(i);
rowCount--;
i--;
}
}
} catch(e)
{
alert(e);
}
getValues();
}
</script>
HTML:
<table border="1" id="dataTable" width="70%" align="center"
cellpadding="0" cellspacing="0" class="normal-text">
<tr>
<td width="28"><input type="checkbox" name="chk[]"
style="width:25px"/></td>
<td width="80" align="center"><input type="text" name="qty[]"
id="qty" onkeyup="getValues()" style="width:81px; border:hidden;
text-align:center;" onBlur=""></td>
<td width="86" align="center"><select name="des[]" id="des"
onChange="getValues()">
<option value="0">SELECT</option>
<option value="FB">FB</option>
<option value="KM2">KM2</option>
<option value="KM4">KM4</option>
<option value="OR2">OR2</option>
<option value="OR4">OR4</option>
<option value="SB2">SB2</option>
<option value="SB4">SB4</option>
<option value="OB2">OB2</option>
<option value="OB4">OB4</option>
<option value="ORB2">ORB2</option>
<option value="ORB4">ORB4</option>
<option value="CB2">CB2</option>
<option value="CB4">CB4</option>
</select>
</td>
<td width="87" align="center">
<input type="text" name="rate[]" id="rate" onKeyUp="getValues()"
style="width:80px; border:hidden; text-align:center;" value=""></td>
<td width="90" align="right">
<input type="text" name="amt[]" id="amt" style="width:80px;
border:hidden;text-align:right;""onKeyUp="getValues()"
readonly="readonly"> </td>
</tr>
</table>
Gross Total: <input type="text" id="total" name="total[]"
style="width:80px; text-align:right" value=""readonly="readonly">
<input type="button" value="Add Row" onClick="addRow('dataTable')" >
<input type="button" value="Delete Row" onClick="deleteRow('dataTable')" >
PHP查询:
$qty = $_POST['qty[]'];
$Des = $_POST['des[]'];
$Price = $_POST['rate[]'];
$Amnt = $_POST['amt[]'];
$gross = $_POST['total[]'];
$sql = "INSERT INTO special(special_id, qty, des, rate, amount, gross_total)
VALUES( '$special_id','$qty','$des','$rate','$amount','$gross')";
mysql_query($sql1);