Php 在同一行中添加值

Php 在同一行中添加值,php,mysql,Php,Mysql,我试图使用循环向表中添加值,但这些值会被引入下一行,例如,在第一列中-第一个值,在第二列中-下一个值,但却是一个递增的行,等等。我的代码怎么了 for ($i = 1; $i < $nbcol; $i++) { mysql_query("INSERT INTO $table1 ($col[$i]) VALUES ('".$_POST['name'.$i]."')"); }; mysql_close($dbconnection); 尝试使用mysql\u error记录错

我试图使用循环向表中添加值,但这些值会被引入下一行,例如,在第一列中-第一个值,在第二列中-下一个值,但却是一个递增的行,等等。我的代码怎么了

for ($i = 1; $i < $nbcol; $i++) {      


mysql_query("INSERT INTO $table1 ($col[$i]) VALUES ('".$_POST['name'.$i]."')"); 
};
mysql_close($dbconnection);

尝试使用mysql\u error记录错误并查看问题所在,如果需要进一步帮助,请在此处报告问题所在

for ($i = 1; $i < $nbcol; $i++) {      


mysql_query("INSERT INTO $table1 ($col[$i]) VALUES ('".$_POST['name'.$i]."')") or die(mysql_error()); 
};
mysql_close($dbconnection);
只需在此处添加列名,然后在post数据中迭代(如果它是单调递增的)

最后,我成功了。 代码如下:

<?php
include 'connect.php';
include 'variable.php';
$query = "Select * from $table1";
$result = mysql_query($query);
$nbcol = mysql_num_fields($result);
mysql_query("INSERT INTO $table1 ($col[1]) VALUES ('".$_POST['name1']."')"); 
for ( $i = 2; $i < $nbcol; $i++ ) {
$colname = mysql_field_name($result, $i);
mysql_query("UPDATE $table1 SET $colname ='".$_POST['name'.$i]."' WHERE $col[0] = '".$_POST['name0']."' ");
}
header("Location: index.php");
mysql_close($dbconnection);
?>
在输入的php文件中

<td><input name="name0" type="text" value="<?php echo $num_rows+1; ?>"></td>
插入以下行,例如。有30行$num_行,代码将在第一个字段中插入30+131,这是插入值的行


感谢@Drew Pierce,首先是为第二个字段插入,然后为另一个字段更新。

进行更新,不要插入^。这会让你面临sql注入。你有点不确定你想要实现什么。你的意思是你想在每一行中设置许多值吗?一个前后和所需的后数据样本可以带来一些清晰的信息你有多少个值/列?如果有多个for循环,则必须在for循环外运行一次查询;如果很少,则必须显式编写查询
<td><input name="name0" type="text" value="<?php echo $num_rows+1; ?>"></td>