在循环中将两个表单字段一起插入[关闭]

I have two form fields "First name" and "Last name" I can also clone the two fields to add more users on one submit. I want each record to have it's own ID once inserted into the database. However I can't seen to get it to insert two values at once in a loop.

My form fields are

 <input type="text" name="firstname_0" size="35" value="" />
 <input type="text" name="lastname_0" size="35" value="" />

The name auto increments every time I want to add another user firstname_1, lastname_1 etc...

I would like to add 1 or unlimited users in one form submit.

Any help would be appreciated.

I tried using a foreach() and while but can't get the concept.

Use arrays in the inputs' name attribute.

<input type="text" name="users[0]['firstname']" size="35" value="" />
<input type="text" name="users[0]['lastname']" size="35" value="" />

<input type="text" name="users[1]['firstname']" size="35" value="" />
<input type="text" name="users[1]['lastname']" size="35" value="" />

And then:

foreach ($_POST['users'] as $user) {
}

I would suggest to change your input fields with arrays

<input type="text" name="firstname[0]" size="35" value="" />
<input type="text" name="lastname[0]" size="35" value="" />

And you keep adding inputs increasing its key

<input type="text" name="firstname[1]" size="35" value="" />
<input type="text" name="lastname[1]" size="35" value="" />
......
<input type="text" name="firstname[2]" size="35" value="" />
<input type="text" name="lastname[2]" size="35" value="" />

Then on your PHP you can proccess the data easily.

$firstName = $_POST['firstname'];
$lastName  = $_POST['lastname'];
.... do some checks ....

foreach ($firstName as $key => $name)
{
     insert_to_db($name, $lastName[$key]);
}
<input type="text" name="user[][firstname]" size="35" value="" />
<input type="text" name="user[][lastname]" size="35" value="" />

use your input like this..

than print_r($_POST['user']); you will see what happend..

<input type="text" name="firstname[]" size="35" value="Waqar" />
<input type="text" name="lastname[]" size="35" value="Alamgir" />


<input type="text" name="firstname[]" size="35" value="Natasha" />
<input type="text" name="lastname[]" size="35" value="Milla" />