我有一个HTML表单,检索不同数量的产品类型,用户输入股票数字。然后需要将该数据插入到新表中。下面是填充表单的PHP查询。
require_once 'config.php';
$i = 1;
$sql = "SELECT * FROM dealer_product WHERE customer_code='$custcode' ORDER BY prod_code";
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)) {
$prodcode = $row['prod_code'];
echo "<tr><td><input type='text' name='prod".($i++)."' value='" . $prodcode . "'/></td><td><input type='number' name='openstock".($i++)."'/></td><td><input type='number' name='sold".($i++)."'/></td></tr>";
}
mysql_close($con);
?>我知道如何插入设定数量的多条记录,但如何插入不同数量的记录?提前谢谢。对不起,对于我的基本知识,我是一个网络管理员,不是PHP MYSQL。
发布于 2013-11-28 08:34:22
将输入字段命名为数组,例如:
<input name="prods[0]" />然后,您可以在您的超文本标记语言中输出可变数量的输入,甚至可以使用JavaScript添加更多。PHP会将输入转换为数组,您可以在该数组上进行迭代:
<?php
foreach ($_POST['prods'] as $prod) {
/* Process $prod */
}
?>发布于 2013-11-28 08:53:14
我建议您使用相同的方法,但使用
while ($row = mysql_fetch_assoc($result))
现在你没有用数字作为索引,这是一种更复杂的查看事物的方式,最好看看关联方式,这是mysql表中的列名。
你在那里做了很多增量,做了很多次$i++。我不知道你是不是故意这样做的,但如果不是的话,那就让$i递增一次。
此外,还可以使用以下命令获取行数:
if (mysql_num_rows($result) == 0) {
echo "No rows found, nothing to print so am exiting";
exit;
}看看手册里面
https://stackoverflow.com/questions/20255690
复制相似问题