2011-08-13 28 views
11

我的代碼發送多封電子郵件與連接環,笨:最後電子郵件電子郵件附件,而在循環發送多封電子郵件沒有被清除

問題是最後一個(歷屆)電子郵件附件得到重視下一封郵件。

ex。假設在數據庫3級的電子郵件,在每個(a1.pdf,a2.pdf,a3.pdf)1個附着 然後, 它發送電子郵件附件作爲

電子郵件1:

附件:a1.pdf

電子郵件2:

附件:a1.pdf,a2.pdf

電子郵件3:

附件: a1.pdf,a2.pdf,a3.pdf

我使用笨框架。

我的代碼是(該代碼被稱爲環路)

。 。 。

$ this-> email-> subject($ item-> subject);

 $this->email->message($message); 
     $attachments=''; 
     if(strlen($item->attachment) > 5) 
     { 
      $attachments = explode(',', $item->attachment); 
      foreach($attachments as $attachment) 
      { 
       if(strlen($attachment)>5) 
       $this->email->attach(FCPATH . 'attachments/' . $attachment);      
      }     

     } 

     $this->email->send(); 

。 。 。

+4

找到解決辦法:$ this-> email-> clear(TRUE); – anils

回答

16

您需要在CodeIgniter中重置它。

在循環加載結束:

$this->email->clear(TRUE); 

這將重置所有電子郵件變量,包括附件,允許您創建一個新的郵件。

+0

謝謝MaartenC89 – anils

+0

這個工作,但在我的情況下,它沒有附加在最後一個循環的文件。 – Kentot