我正在创建一个表单,允许用户复制一个字段来提交大量项目。我希望用户能够复制最后 2 个字段(数量和项目),这是我通过此处的脚本完成的。
[表单截图][1]
对于要重复的字段,我在元素名称中包含了一个数组,因为它显然使用了:
<div class="form-group form-inline">
<label class="control-label" for="quantity">Quantity</label>
<input class="form-control input-md" id="quantity" type="text" name="quantity[]" maxlength="2" size="2" required>
<label class="control-label" for="item">Item</label>
<input class="form-control input-md" id="item" type="text" placeholder="Item Name" name="item[]" maxlength="100" size="68" required>
</div>
提交后,这些值将传递到一个 php 文件,我将数组声明为:
$quantity = $_POST['quantity']; // required
$item = $_POST['item']; // required
并尝试将数组包含在电子邮件中:
$email_message .= "Quantity: ".[$quantity]."\n";
$email_message .= "Item: ".[$item]."\n";
但是,当我收到电子邮件时,我只得到“Array”作为字段值,而不是用户输入的文本:
数量:数组
项目:数组
如何让电子邮件包含重复字段中的各种值?
最佳答案
正如 Jay 所说,你无法回显数组。以下是如何生成要发送的“数量”的示例。
$quantity = $_POST['quantity'];
$quantity_val = "";
if( is_array( $quantity ) && count( $quantity ) > 0 ) {
foreach( $quantity as $q ) {
$quantity_val .= "{$q}\n";
}
}
$email_message .= "Quantity: {$quantity}";
关于javascript - 重复字段未通过电子邮件发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33085856/