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里面是数组,能够自动获取有多少数据。