我已经做了很多次来获取表单POST并保存在mysql数据库中。我有一个包含一些数据的表单,当我保存按钮时,数据应保存到另一个表中。我有大约350条记录显示在表单中,当我保存它时,它应该写入另一个表。但是当记录保存到另一个表时,它只是从表单中将大约63条记录保存到另一个表中,而实际记录数超过250条记录。
我的save.php文件如下:
$size = count($_POST['sl']);
$i = 0;
while ($i < $size) {
$sl= $_POST['sl'][$i];
$item_id= $_POST['item_id'][$i];
$item_name= $_POST['item_name'][$i];
$query = "INSERT INTO anothertable SET slno = '$sl',item_name = '$item_name',item_id =
'$item_id' ";
mysql_query($query) or die ("Error in query: $query");
++$i;
}
这个脚本好吗?或者我犯了什么错误?
表单脚本发布在下面:
<?php
echo "<form name='cart' method='post' action='price_add_save.php?supplier_name=$supplier_name_enc&tender_id=$tender_id' >";?>
$sql= "(SELECT item_name, item_id, tender_id, slno FROM tender_items WHERE tender_id=$tender_id) order by slno";
$result = mysql_query($sql) or die($sql."<br/><br/>".mysql_error());
$i = 0;
while ($list5 = mysql_fetch_array($result)) {
echo '<tr>';
echo "<td width='4%'><input size='1' type='text' id='sl[$i]' name='sl[$i]' value='{$list5['slno']}' readonly/></td>";
echo "<td width='10%' id='addinput'><input type='text' size='15' name='item_name[$i]' placeholder='{$list5['item_name']}' value='{$list5['item_name']}'></td>";
echo "<td width='3%'><input size='2' class='item_id' type='text' name='item_id[$i]' value='{$list5['item_id']}' readonly/></td>";
++$i;
}
echo '<input type="submit" value="--Save Data--" />';
?>
答案 0 :(得分:2)
这基本上是 php.ini 中max_input_vars
的问题。我从1000
更改为5000
..现在工作正常。谢谢大家..