消息体中的PHP Mailer-foreach
我想在电子邮件正文中包含使用foreach的结果。当我添加foreach语句时,PHP-Mailer似乎只是切断了消息。关于如何在消息正文中包含多个结果,您有什么想法吗消息体中的PHP Mailer-foreach,php,foreach,phpmailer,Php,Foreach,Phpmailer,我想在电子邮件正文中包含使用foreach的结果。当我添加foreach语句时,PHP-Mailer似乎只是切断了消息。关于如何在消息正文中包含多个结果,您有什么想法吗 $mail->Body = '*** Automated email - do not reply ***<br><br>Hello '.$Name.', <br><br>We were able to connect you with the following se
$mail->Body = '*** Automated email - do not reply ***<br><br>Hello '.$Name.', <br><br>We were able to connect you with the following services. <br><br> ';
foreach($findResult['data'] as $key=>$findData){
if($findData['CompanyEmail'][0] != NULL || $findData['CompanyPhone'][0] != NULL) {
echo $findData['CompanyName'][0];
echo $findData['CompanyContact'][0];
echo $findData['CompanyPhone'][0];
echo $findData['ContactEmail'][0];
}?><br><?php }
$body .='<br><br>Thank you for using our directory.<br><br><br>Regards,<br><br>Sender';
$mail->Body='***自动电子邮件-请勿回复***
您好。$Name',
我们可以通过以下服务为您连接
';
foreach($findResult['data']作为$key=>$findData){
如果($findData['companymail'][0]!=NULL | |$findData['CompanyPhone'][0]!=NULL){
echo$findData['CompanyName'][0];
echo$findData['CompanyContact'][0];
echo$findData['CompanyPhone'][0];
echo$findData['ContactEmail'][0];
}?>
您需要使用$mail->Body.=
来继续字符串,而不是使用echo。如下所示:
$mail->Body = '*** Automated email - do not reply ***<br><br>Hello '.$Name.', <br><br>We were able to connect you with the following services. <br><br> ';
foreach($findResult['data'] as $key=>$findData){
if($findData['CompanyEmail'][0] != NULL || $findData['CompanyPhone'][0] != NULL) {
$mail->Body .= $findData['CompanyName'][0];
$mail->Body .= $findData['CompanyContact'][0];
$mail->Body .= $findData['CompanyPhone'][0];
$mail->Body .= $findData['ContactEmail'][0];
}
}
$body .='<br><br>Thank you for using our directory.<br><br><br>Regards,<br><br>Sender';
$mail->Body='***自动电子邮件-请勿回复***
您好,“$Name.”,
我们可以通过以下服务为您连接。
;
foreach($findResult['data']作为$key=>$findData){
如果($findData['companymail'][0]!=NULL | |$findData['CompanyPhone'][0]!=NULL){
$mail->Body.=$findData['CompanyName'][0];
$mail->Body.=$findData['CompanyContact'][0];
$mail->Body.=$findData['CompanyPhone'][0];
$mail->Body.=$findData['ContactEmail'][0];
}
}
$body.='
感谢您使用我们的目录。
问候,
发件人';
如果,正如我所怀疑的那样,$body
也应该是电子邮件的一部分,那么将其更改为$mail->body.=
。您有$mail->body
和$body
,它们完全不相关……在foreach
中,您只需输出内容。如果您希望所有内容都在邮件正文中,请将其放在那里,而不是全部在这里。@TillHelge这不是人们来这里学习的原因吗?@Styphon这一页不太适合教授要点。从这个问题很容易看出,即使是最基本的调试技术(echo/log变量)是OP所不知道的,他永远也不会从中学习,因为他在这里得到的都是代码片段,而他真的需要一个正确的解释,说明什么是问题,以及如何自己去发现问题。@TillHelge我同意Styphon的观点。当完全的初学者发布像OP这样的问题,包括他们的代码时,什么他们没有期待,表现出一些努力,也没有要求为他们编写应用程序;这就是他们的目的。问题是“如何在PHP中发送邮件?是否有人可以编写一个脚本为我发送用户输入”,这不受欢迎感谢感谢你的帮助,Styphon。我真的很感谢。它很有效,我可以理解为什么它没有成功(太感谢你了。