我有一个表单,用户可以填写它,然后如果他需要可以通过按下按钮添加更多字段(我用js做)。 现在我想通过php发布结果,但我不知道如何写php方面。我确实试着遵循multi-dimensional array post from form中的指示,但我无法解决它。 我的HTML格式:
<form role="form" method="POST" action="form.php">
<label>Ice Age Gelato</label>
<div class="multi-field-wrapper">
<div class="multi-fields"><div class="multi-field">
<input type="text" name="user[]">
<button type="button" class="remove-field">Remove</button>
</div></div>
<button type="button" class="add-field">Add field</button>
</div>
<input type="submit" value="Send">
</form>
这是form.php中的相对部分,我不知道如何写:
$user = $_POST['users'] = array(
array()
);
和
user: $user,
哪里错了? 谢谢
答案 0 :(得分:0)
更改此
if (RequestAge)
{
if (childrenCount > 0)
{
var AgeOptions = ['Select Age', '1','2','3'....'12'];
return (
<label>Enter Age of Children'</label>
<select name='selectAge' id='selectAge'>
<option key='Select Age' value='Select Age'>this.props.AgeOptions}
</option>
</select>
)
}
}
要
$user = $_POST['users'] = array(
array()
);
您正在使用$user = $_POST['user'];
定义替换帖子值。
您使用array()
作为输入名称并尝试从发布的数据中获取user
。
注意:通过将输入名称定义为
users
,您已将值格式更改为user[]
。因此,从发布的数据中获取它时,无需采取额外操作使其成为array
。您将array
作为一个数组,所有输入值都作为项目。例如,如果你有两个输入值&#34; userA&#34;和&#34;用户B&#34;。$_POST['user']
会像这样给你 -
var_dump($_POST['user'])
修改强>
当您尝试将Array (
[0] => "userA",
[1] => "userB",
)
打印为要发送到电子邮件的字符串时,它是一个数组。因此,只需使用逗号连接数组元素即可使其成为字符串。像这样:
$users
答案 1 :(得分:0)
由于您的输入名称为user[]
,因此请替换
$user = $_POST['users'] = array(
array()
);
到
$user = $_POST['user'];
答案 2 :(得分:0)
如果您将输入字段用作字符串:
<input type="text" name="user[]">
你将得到的结果如下:
echo "<pre>";
print_r($_POST);
Array
(
[user] => Array
(
[0] => test
)
[submit] => Submit Query
)
现在,您如何从这个多维array
:
如其他答案中所述,您将获得以下值:
$user = $_POST['user'];
print_r($user);
// Result
Array
(
[0] => test
)
现在,如何从array
获取此值,请按照以下步骤操作:
foreach ($user as $value) {
echo $value. "<br/>"; // test
}