这是我对这个社区的第一个问题。但是,我长期以来一直在使用它来解决任何技术问题,这是一个很好的帮助。
无论如何,我的问题是:
我使用以下方法从另一个PHP文件shopping_cart.php加载mail_contents.php div中的内容:
$("#mail_contents").load('shopping_cart.php #cart_contents');
当我在浏览器中直接打开mail_contents.php时,我也可以看到内容。
但问题是当我尝试使用以下代码在电子邮件中发送此php文件的内容时:
.....
$mailer = new PHPMailer();
$mailer->CharSet = 'utf-8';
$mailer->IsHTML(true);
$mailer->AddAddress($this->UserEmail());
$mailer->Subject = "You have placed an order with ".$this->sitename;
$mailer->From = $this->GetFromAddress();
$mailer->FromName = "POR";
ob_start();
include 'mail_contents.php';
$content = ob_get_clean();
$mailer->Body = $content;
if(!$mailer->Send()){
$this->HandleError("Failed sending user welcome email.");
return false;
}
return true;
....
我无法看到动态加载的内容。我使用echo语句在mail_contents.php文件中添加了一些静态代码,我发现它在我的电子邮件中成功显示。如果我做错了,请指导我。
感谢提前!!
答案 0 :(得分:0)
试试这个:
ob_start();
include 'mail_contents.php';
$content = ob_get_clean();
$mail->MsgHTML($content, dirname(__FILE__));
告诉我,这是否有效。