簡體   English   中英

無法使用CakePHP Mail發送電子郵件附件PDF

[英]Cannot send email attachment PDF with CakePHP Mail

任何人都可以幫助我解決這個問題。 我試圖用CakePHP發送PDF附件。 我認為一切都應該正常。 但是,為什么我會在屏幕截圖中得到電子郵件結果?

在此處輸入圖片說明

我發送pdf的代碼:

function send_notif_email($email=null,$template='default',$data=null,$subject='Notification',$noreplay=true,$attachment=array()) {
    $Email = new CakeEmail('default');
    $emailData = $data;

    if($Email->template($template)
    ->emailFormat('html')
    ->to($email)
    ->from(($noreplay == true)?Configure::read('Meta.noreplay'):Configure::read('Meta.email'))
    ->replyTo(($noreplay == true)?Configure::read('Meta.noreplay'):Configure::read('Meta.email'))
    ->setHeaders(array(
        'From' => ($noreplay == true)?Configure::read('Meta.noreplay'):Configure::read('Meta.email'), 
        'Reply-To' => ($noreplay == true)?Configure::read('Meta.noreplay'):Configure::read('Meta.email'),
        'MIME-Version' => '1.0', 
        'Content-type' => 'text/html; charset=iso-8859-1', 
    ))
    ->attachments($attachment)
    ->subject($subject)
    ->viewVars(compact('emailData')) /*set data*/
    ->send()) {
        return true;
    }

    return false;
}

我只是檢查所有附件數組和文件路徑,一切都很好:

array(
        'penawaran_0001_VN_SPN_X_2015' => '/home3/salesku/public_html/penawaran-online/app/webroot/upload/offer/00001/penawaran_0001_VN_SPN_X_2015.pdf',
        'X100.pdf' => '/home3/salesku/public_html/penawaran-online/app/webroot/upload/attachment/00001/X100.pdf'
    )

感謝幫助。

我想我才發現問題。 似乎應該將setHeader從方法send_notif_email中刪除。

不適用於新代碼:

function send_notif_email($email=null,$template='default',$data=null,$subject='Notification',$noreplay=true,$attachment=array()) {
    $Email = new CakeEmail('default');
    $emailData = $data;

    if($Email->template($template)
    ->emailFormat('html')
    ->to($email)
    ->from(($noreplay == true)?Configure::read('Meta.noreplay'):Configure::read('Meta.email'))
    ->replyTo(($noreplay == true)?Configure::read('Meta.noreplay'):Configure::read('Meta.email'))
    ->attachments($attachment)
    ->subject($subject)
    ->viewVars(compact('emailData')) /*set data*/
    ->send()) {
        return true;
    }

    return false;
}

謝謝大家

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM