0

有人可以告诉如何将此插入写入数据库吗?下面的代码是我想要完成的一个例子。我想为有多个孩子的家庭制作一个表格。他们提交他们将在数据库中共享的姓氏和一个 ID。请参阅下面的代码...

表单输入

<input type="text" name="fname[]"/>
<input type="text" name="lname[]"/>
<input type="text" name="fname[]"/>
<input type="text" name="lname[]"/>
<input type="text" name="family_id"/>

这是我遇到麻烦的地方。我可以提交姓氏,但只有第一个(行)“name”也存储了“family_id”。

PHP

        foreach($_POST['fname'] as $key => $fname) {
            $lname = $_POST['lname'][$key];
                            $family_id = $_POST['family_id'][$key];

            $query = mysql_query("INSERT INTO Table (FName, LName, Family_ID ) VALUES ('{$fname}', '{$lname}', $_POST['family_id'])"); 
        } 

我很感激任何帮助!

4

2 回答 2

0

{}到处失踪$_POST['family_id']
family_id不是数组。

所以你得到的第一次迭代

$_POST['family_id'][0]; // gets the id

第二

$_POST['family_id'][1]; // gets undefined index

要修复它,请执行以下操作。

foreach在循环之前添加以下代码并将其连接$family_id到查询中,就像您对其他代码所做的那样。

$family_id = $_POST['family_id'];
于 2013-01-12T04:00:52.440 回答
0

尝试这个:

extract($_POST);
$total=count($fname);

for($i=0;$i<count($total);$i++)
{

$fname=$fname[$i];
$lname=lfname[$i];

 $query="INSERT INTO Table (FName, LName, Family_ID ) VALUES ('{$fname}', '{$lname}', $family_id)";

}
于 2013-01-12T04:02:23.900 回答