【问题标题】:PHPMailer not sending attachment?PHPMailer不发送附件?
【发布时间】:2012-09-01 11:16:48
【问题描述】:

我正在使用 PHPMailer 以 pdf 格式向客户发送订单收据。 PDF 创建工作就像一个梦想,但它只是不会将其附加到邮件中。我尝试过向我的 gmail 和我自己的服务器发送电子邮件,但它不会发送附件。这是我的代码:

<?php   
//Lähetä tilausvahvistus
require_once('mail/class.phpmailer.php');
$bodytext = '
Olemme vastaanottaneet tilauksenne '. $ordernumber .'. 
Tilaamanne tuotteet löytyvät liitteestä.'
  ;
$email = new PHPMailer();
$email->From      = 'no-reply@xxx.fi';
$email->FromName  = 'no-reply@xxx.fi';
$email->Subject   = 'Olemme vastaanottaneet tilauksenne ' . $ordernumber;
$email->Body      = $bodytext;
$email->AddAddress('christian.nikkanen@gmail.com');
$email->AddAttachment('kuitit/kuitti777.pdf','kuitti777.pdf');
return $email->Send();
?>

我试过相对路径和直接路径,但是不行,它不会发送。

【问题讨论】:

  • 试试if(!$email-&gt;Send()){ echo $email-&gt;ErrorInfo; }
  • 它发送邮件,并且不会显示任何错误,并且通常通过ajax调用执行脚本...
  • 您是否将error_reporting 设置为关闭?也许设置$email = new PHPMailer(true) 将错误作为异常?
  • @Touki 这样做了,但它只是停止发送邮件。
  • 执行catch (phpmailerException $e) { echo $e-&gt;getMessage(); } 没有给出任何结果?

标签: php phpmailer


【解决方案1】:

您是否正确验证了您的路径?

尝试使用 $_SERVER['DOCUMENT_ROOT'] 再次写入路径

【讨论】:

    【解决方案2】:

    检查 PHP 是否正确解释了您的文件路径。尝试将 $pathtofile 粘贴在会话中并使用它,而不是静态分配(或将其转储到输出),这样您就可以确保它不是一个简单的路径问题。

    【讨论】:

    • 这样做了,静态它没有发送任何东西,但相对它发送了附件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-05
    • 1970-01-01
    • 2015-06-06
    • 2016-09-02
    相关资源
    最近更新 更多