2011-03-17 88 views
0

我通過表單發送帶附件的電子郵件,根據服務器的不同,我得到的結果不同。我的dev服務器顯示一切正常,但生產服務器顯示錯誤的編碼的電子郵件(重音字符)和附件被ATT00001.txt文件(這是base64編碼)替換Codeigniter郵件附件編碼問題

我以純文本形式發送電子郵件,我應該強調它在使用smtp的開發服務器中工作正常,但使用的是Gmail地址。生產服務器似乎使用一種MS Outlook服務器或類似的東西,但不在現場,不在我的範圍之內。

這是電子郵件如何到達使用生產服務器:

>  Content-Type: text/plain; charset=utf-8 
>  
>  Content-Transfer-Encoding: 8bit 
>  
>  Datos Personales: 
>  
>  Puesto: Otro test 
>  
>  Nombre y Apellido: name 
>  
>  Dirección: rhdireccion 
>  
>  Teléfono: rhtelefono 
>  ... 

這些都是在我的配置文件我的電子郵件設置:

$config['protocol'] = 'smtp'; 
$config['smtp_host'] = 'xxxxxxxxx'; 
$config['smtp_port'] = 465; 
$config['smtp_user'] = 'xxxxxxxxxxx'; 
$config['smtp_pass'] = 'xxxxxxxxxx'; 
$config['mailtype'] = 'text'; 
$config['charset'] = 'iso-8859-1'; 

$config['rrhh'] = '[email protected]'; 

我試圖改變字符集爲UTF-8並沒有什麼區別。接下來我可以嘗試什麼?

回答

0

根據我的經驗,使用phpmailer(轉換爲codeigniter庫之後)更加可靠和實用。從this開始