我们说我有一个"fieldname"
,它在HTML表单中有多个表单输入。在表单name="fieldname[]"
中。
然后我设置了一个fieldname
变量:
$fieldname = $_POST['fieldname'];
然后我会使用循环来访问每个值:
foreach ( $_POST['fieldname'] as a_name ) {
echo $a_name;
}
我想在"fieldname"
下面的$email_body
变量中使用$email_body = "Auto Quote\n From: $email \n $address, $carrier"
中的每个值,然后使用邮件功能。
我有一个email_body变量,用于我的邮件功能:
$a_name
我是否只将email_body包含在foreach循环的波浪括号中?然后将{{1}}变量放在引号中?或者在我的(未显示)邮件功能中使用它会更好吗?
答案 0 :(得分:0)
如果我理解正确,您不确定如何在邮件正文中使用$a_name
变量。当然,如何执行此操作取决于您希望放置表单输入的邮件正文中的位置,但以下内容可能有效:
$fieldname = $_POST['fieldname'];
$email_body = "Auto Quote\n From: $email \n $address, $carrier \n"
foreach ($_POST['fieldname'] as $a_name ) {
$email_body .= $a_name . "\n";
}
这会将“fieldname”表单中的输入附加到邮件正文中。如果您想将输入放在不同的位置,您应该清楚地切换。 ;)
答案 1 :(得分:0)
你做了几乎所有事情。 $_POST['fieldname']
是一个数组,因此在$fieldname = $_POST['fieldname'];
之后,数组的副本位于$fieldname
,无需再使用$_POST['fieldname']
。
将每个内容添加到邮件正文中:
$body = 'Whatever text before: ';
foreach ($fieldname as $index => $value ) {
$body .= $index . ': ' . $value . ';';
}
$body .= 'text after.';
//send your e-mail
您可以直接使用$_POST['fieldname']
而不使用$fieldname
变量。
如果需要,我会放置一个您可以忽略的索引,如果需要,请参阅PHP foreach
文档http://php.net/manual/en/control-structures.foreach.php。
当正在使用来自客户端的文本时,您必须意识到一个点本身在一行上结束电子邮件正文的事实,我不知道PHP邮件函数如何处理这个,可能是一些测试是合适的。