我有两个表单字段"名字"和"姓氏" 我还可以克隆这两个字段以在一次提交中添加更多用户。我希望每条记录在插入数据库后都有自己的 ID。但是,我看不到让它在循环中一次插入两个值。
我的表单字段是
<input type="text" name="firstname_0" size="35" value="" />
<input type="text" name="lastname_0" size="35" value="" />
每次我想添加其他用户时,名称都会自动递增firstname_1、lastname_1等......
我想在一个表单提交中添加 1 个或无限个用户。
任何帮助将不胜感激。
我尝试使用 foreach(( 和 while 但无法理解这个概念。
在输入的名称属性中使用数组。
<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="" />
然后:
foreach ($_POST['users'] as $user) {
}
我建议用数组更改输入字段
<input type="text" name="firstname[0]" size="35" value="" />
<input type="text" name="lastname[0]" size="35" value="" />
并且您不断添加输入以增加其键
<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="" />
然后在PHP上,您可以轻松处理数据。
$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="" />
像这样使用您的输入..
超过print_r($_POST["用户"](;你会看到发生了什么..
<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" />