【发布时间】:2010-10-16 19:29:37
【问题描述】:
我在遍历表单输入文本字段时遇到问题。我正在尝试遍历标记为“数字”的多个文本字段,它只提交最后一个数字字段而不是所有“数字”字段。谁能看到我在这里做错了什么??
for ($i = 0; $i < count($_POST['number']); $i++) {
$sql='INSERT INTO orders (custNum,contractNum,equipId,prodNum)
VALUES ('
. "'" . mysql_real_escape_string($_SESSION['custNum']) . "', "
. "'" . mysql_real_escape_string($_POST['contractNum']) . "', "
. "'" . mysql_real_escape_string($_POST['equipId']) . "', "
. "'" . mysql_real_escape_string($_POST['number'][$i]) . "'"
. ')';
}
<?php
$i=0;
while ($i < $num) {
$p1=mysql_result($paper_result,$i,"tp");
$p2=mysql_result($paper_result,$i,"prodNum");
$p3=mysql_result($paper_result,$i,"paperDesc");
?>
<tr>
<td><select name="quant[]">
<option value="0">None</option>
<option value="2">2</option>
<option value="2">4</option>
<option value="2">6</option>
<option value="2">8</option>
<option value="2">10</option>
<option value="2">12</option>
<option value="2">14</option>
<option value="2">16</option>
<option value="2">18</option>
<option value="2">20</option>
</select></td>
<td><?php echo $p1; ?></td>
<td><input type="text" name="number[]" value="<?php echo addslashes($p2); ?>"> </td>
<td><?php echo $p3; ?></td>
</tr>
<?php
$i++;
}
?>
【问题讨论】:
-
您遗漏了实际将数据插入数据库的代码部分,没有看到完整的代码真的很难说问题出在哪里。
-
我想查看
print_r($_POST['number']);的输出,您是否 100% 确定您收到了一个数组? (只是为了验证)