2011-01-07 16 views
5

Avendo uno strano problema con la classe di posta elettronica in codeigniter. Quando invio email direttamente al mio indirizzo email dell'account Gmail, funziona correttamente. Tuttavia, se invio email a un indirizzo email diverso e utilizzo POP3 per importare quell'indirizzo email in gmail, per qualche motivo tutte le intestazioni sono incluse nel messaggio.Problema nell'invio di e-mail con Codeigniter - Intestazioni inviate nel corpo del messaggio

Ecco il codice per l'invio della e-mail:

$this->email->clear(); 
$config['mailtype'] = "html"; 
$this->email->initialize($config); 
$this->email->set_newline("\r\n"); 
$this->email->from('[email protected]', 'Website'); 
$this->email->to('[email protected]'); 
$this->email->message($message); 

Ecco cosa arriva nella mia casella di posta, quando il messaggio viene inviato a un account che viene importato in Gmail tramite POP3:

Date: Fri, 7 Jan 2011 15:07:04 +0000 

From: "Website" <[email protected]> 
Reply-To: "[email protected]" <[email protected]> 
X-Sender: [email protected] 

X-Mailer: CodeIgniter 

X-Priority: 3 (Normal) 

Message-ID: <[email protected]> 

Mime-Version: 1.0 

Content-Type: multipart/alternative; boundary="B_ALT_4d272c1835c46" 




This is a multi-part message in MIME format. 

Your email application may not support this format. 



--B_ALT_4d272c1835c46 

Content-Type: text/plain; charset=utf-8 

Content-Transfer-Encoding: 8bit 



this is the email message content 





--B_ALT_4d272c1835c46 

Content-Type: text/html; charset=utf-8 

Content-Transfer-Encoding: quoted-printable 

<html> 
<body> 
     <p>this is the email message content 
</p> 
</body> 
</html> 



--B_ALT_4d272c1835c46-- 
+0

prova a cambiare tipo di mail da html a testo. –

risposta

0

Poiché la posta viene recapitata all'indirizzo in questione (l'account pop3) codeigniter/sendmail/php/dns/smtp e tutti coloro che sono coinvolti nella consegna della posta hanno fatto ciò che ci si aspettava da loro. Inoltre, hai anche dimostrato che Mail Fetcher di Google è configurato e può prelevare con successo la posta dal server POP3 e posizionarlo nella tua casella di posta, anche in questo caso non c'è niente di sbagliato.

Quello che vuoi sapere è come cambiare il modo in cui questi importati da messaggi pop3 vengono visualizzati nella tua casella di posta in arrivo dell'account Gmail, che non rientra nell'ambito del pubblico a cui stai mirando, se il tuo messaggio viene consegnato il nostro lavoro è fatto.

Un modo per risolvere il problema, forse, è inviare la posta direttamente al tuo account Gmail. Come destinatario principale (invia a, puoi virgola separare più account) o uno degli indirizzi CC o BCC, che eviterà la necessità di recuperare da POP3. Questo verrà quindi visualizzato nella tua casella di posta come per ogni altro messaggio inviato con le intestazioni nascoste come al solito.

Questo funziona per me.

Facci sapere come vanno le cose ...

1

Questo suona come esso non è un problema CodeIgniter.

Hai testato e dimostrato che il messaggio è stato inviato correttamente. Hai visto che invia all'altro account POP3. GMail è in grado di andare a prendere i dati dell'account POP3 ma lo accarezza.

Il test successivo consiste nell'utilizzare un client, ad esempio, Thunderbird (desktop) o Squirrel Mail (web) e verificare se la posta arriva correttamente da queste fonti.

Il test successivo (se non lo è) è quello di utilizzare un account POP3 completamente diverso con un altro provider su un altro server e vedere cosa succede lì.

Il motivo è che il guasto (come lo vedete) sembra avvenire tra la consegna sul POP3 e l'arrivo su GMail. Quello che vorrei essere un cercatore di errori è stabilire se si tratta di un'e-mail mal formata o (e questa sarebbe la mia ipotesi) se il server POP3 ha una configurazione insolita che l'IC potrebbe non prendere in considerazione.

Per risparmiare tempo vorrei pubblicare sul forum CodeIgniter per chiedere se qualcun altro ha riscontrato questi problemi, nel qual caso potrebbe esserci un errore noto o un difetto o una mancanza di qualche tipo. In attesa di una risposta, guarderei il mio server POP3 e gli chiedo perché sta inoltrando i messaggi in un modo che non mi piace e, se questo è POP3, il tipo di server o un problema di configurazione.Ancora più importante una volta che so qual è il problema, come posso cambiare il mio software di invio di e-mail (CI) per inviare e-mail che non si interrompono in questo modo?

Ma prima è necessario conoscere la causa principale del problema.

1

Utilizzare $ config ['protocollo'] = 'sendmail';

Problemi correlati