【发布时间】:2017-01-23 10:16:51
【问题描述】:
我有一个带有五个输入字段的 html 表单,可以在其中输入一个或多个产品特征。输入的值应发送到 SQL 表。当所有 5 个字段都包含值时,这适用于 for 循环。
<input name="productmaingroupsinput[1]" size="80"/><br>
<input name="productmaingroupsinput[2]" size="80"/><br>
<input name="productmaingroupsinput[3]" size="80"/>
<input name="productmaingroupsinput[4]" size="80"/>
<input name="productmaingroupsinput[5]" size="80"/>
$productmaingroupsinput = $_POST["productmaingroupsinput "];
for ($i=1; $i<6; $i++) {
$sql="INSERT INTO productmaingroup (productmaingroup_id, product_id,
productmaingroups) VALUES ('', (SELECT master_id from producttable
WHERE productname='$ productname '), '".productmaingroupsinput
[$i]."')";
mysqli_query($db, $sql);
}
但是,当较少的字段填充条目时,我的 SQL 表中会出现空条目。现在,我想避免 SQL 表中的空字段。我试过了
if (isset($_POST["productmaingroupsinput[$k]"])) {
$j = $k + 1;
}
或
$j = count($productmaingroupsinput);
for ($i=1; $i<$j; $i++) {
$sql="INSERT INTO productmaingroup (productmaingroup_id, product_id,
productmaingroups) VALUES ('', (SELECT master_id from producttable
WHERE productname='$ productname '), '".productmaingroupsinput
[$i]."')";
但它没有用。
如何使 for 循环动态化,以便仅将输入的值发送到 SQL 表?
谢谢!
【问题讨论】: