PHP多条数据如何一起提交?

Array
(
[id] => 2
[Category] => Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
[5] => 6
)

)

本来我是想实现这样的:
array
(
Array
(
[id] => 1
[Category] => Array
(
[0] => 1
[1] => 2
[2] => 3
)

)
Array
(
[id] => 2
[Category] => Array
(
[3] => 4
[4] => 5
[5] => 6
)

)
)

可是我点击提交之后,id 2 把 id 1覆盖了,Category则全合并到一个数组里面

参考如下
多个提交和一个提交的道理是相同的,只是一些细节上要注意。
提交一个,表单是:
<form>
<input type=text name=name>
<input type=text name=sex>
<input type=text name=age>
<input type=text name=address>
</form>
PHP存数据库的语句是:
$sql="insert into tab(...) values ($_POST[...])";//省略字段和值

那么多个提交的方法一,表单是:
<form>
<input type=text name=name1><input type=text name=sex1><input type=text name=age1><input type=text name=address1>
<input type=text name=name2><input type=text name=sex2><input type=text name=age2><input type=text name=address2>
</form>
PHP存数据库语句是:
$sql="insert into tab(...) values ($_POST[...1])";//省略字段和值
mysql_query($sql);
$sql="insert into tab(...) values ($_POST[...2])";//省略字段和值
mysql_query($sql);

上面方法一写的例子是两条,多条的方法相同,技巧就是输出表单使用JS的循环,存盘的PHP代码也可以循环,并且能够判断为空的就不提交,比如表单20条,只填了5条,就只存5条到数据库。

方法二是使用数组,表单:
<form>
<input type=text name=name><input type=text name=sex><input type=text name=age><input type=text name=address>
<input type=text name=name><input type=text name=sex><input type=text name=age><input type=text name=address>
<input type=text name=name><input type=text name=sex><input type=text name=age><input type=text name=address>
</form>
PHP代码是:
for ($i=0;$i<count($_POST["name"]);$i++)
if ($_POST["name"][$i]!='')
{
$sql="insert into tab(...) values ($_POST[...][$i])";//省略字段和值
mysql_query($sql);
}
这样表单可以写任意多行,PHP里面是数组,能够自动获取有多少数据。
温馨提示:答案为网友推荐,仅供参考