2012-11-07 62 views
1

我無法使Codeigniter電子郵件庫在新服務器上工作。SMTP Codeigniter電子郵件錯誤'354結束數據'。

此代碼以前曾工作,但最近停止工作,我不能爲我的生活找出原因。從本質上講,這裏是代碼:

$this->email->from('[email protected]', 'Intranet'); 
$this->email->to($c['email']);//This is def a valid email 

//$name is being obtained from elsewhere 

$this->email->subject('Time manager reminder'); 
$this->email->message(" 
    {$name[0]}, 
    <br/><br/>You haven’t completed your time for today. Please don’t forget to do so<br/><br/> 
    Intranet 
    "); 

$this->email->send(); 

而且email.php配置密碼

$config['mailtype'] = "html"; 
$config['priority'] = 1; 
$config['protocol'] = "smtp"; 

$config['smtp_host'] = "my server.."; 
$config['smtp_user'] = "u/n"; 
$config['smtp_pass'] = "p/w"; 

$config['smtp_timeout'] = 1; 
$config['validate'] = true; 

我從$this->email->print_debugger();收到的錯誤如下:

data: 354 End data with . 

The following SMTP error was encountered: 
Unable to send email using PHP SMTP. Your server might not be configured to send mail using this method. 

您可以查看完整這裏的pastebin錯誤http://pastebin.com/y9UeaEGY

我已經劃掉了在所有地方發送電子郵件,但我可以向你保證他們是有效的和使用的電子郵件地址。

我很感謝您可以提供任何幫助。謝謝

+0

354可能意味着你的消息中有一些奇怪的內容。 它看起來像你在消息中使用的撇號可能不是標準的撇號......當你刪除你的撇號時會發生什麼? – Darrrrrren

+0

嗨。我試圖改變'你沒有'到'你沒有',它仍然會產生同樣的錯誤。 – Sinmok

+0

你在'不'中有相同的撇號...你是否改變了兩個? – Darrrrrren

回答

1

我想出了原因。顯然,在配置,你需要手動設置

$config['crlf']  = "\r\n"; 
$config['newline'] = "\r\n"; 

在email.php文件。 Codeigniter似乎沒有默認。奇怪:)