nel mio sistema CRM online. Controllo i messaggi in entrata con il protocollo IMAP. Ora sto effettuando l'invio di email con phpmailer e protocollo SMTP. Tutto ok, ma ho una cosa strana. Come fare spedire mail di script phpmailer nella cartella IMAP "Inviato"?Le e-mail inviate con phpmailer non vanno nella cartella IMAP "Inviato"
risposta
V'è ora un metodo getSentMIMEMessage in PHPMailer che restituisce la stringa intera MIME
$mail = new PHPMailer();
//code to handle phpmailer
$result = $mail->Send();
if ($result) {
$mail_string = $mail->getSentMIMEMessage();
imap_append($ImapStream, $folder, $mail_string, "\\Seen");
}
- Devi essere l'inoltro della posta inviata attraverso l'IMAP ospite
- L'host IMAP ha bisogno per supportare la funzione (che molto pochi lo fanno)
Se uno di questi due punti non sono vere , la risposta breve è "Non puoi". In breve, dipende dal provider di posta, non dal codice.
Per quanto odio M $, Exchange è un luogo in cui hanno davvero le cose giuste - se si utilizza un server Exchange, tutto questo viene gestito per te.
Beh, è piuttosto difficile, ma può essere fatto.
Dai un'occhiata alla funzione imap-append.
Collegandosi a una risorsa di flusso IMAP, è possibile utilizzare imap-append() per aggiungere i messaggi alla cartella Posta inviata del proprio account IMAP.
Ma leggere i commenti vi mostrerà che è un po 'noioso da realizzare, ma certamente non impossibile - probabilmente dovrete codificare qualcosa da soli, dal momento che phpmailer non supporta questo fuori dalla scatola (e sarà probabilmente troppo dispendioso in termini di tempo per implementare invece di fare qualcosa da soli).
Ugh, davvero? Comunque, suppongo sia una soluzione, anche se un aggiramento, quindi ti darò uno di questi deliziosi +1. – DaveRandom
Grazie per la risposta - ci proverò. – piernik
@DaveRandom Sono d'accordo con te, non è carino, ma è possibile risolvere il problema che l'OP ha; anche se non capisco la necessità ... – Repox
Ho trovato un modo più semplice per farlo. PHPmailer prepara la posta elettronica come stringa - tutto ciò che devi fare è metterlo nella giusta cartella IMAP.
ho ampliato classe phpmailer con questo codice (dal Vars sono protetti non riesco a raggiungerli):
class PHPMailer_mine extends PHPMailer {
public function get_mail_string() {
return $this->MIMEHeader.$this->MIMEBody;
}}
codice PHP:
$mail= new PHPMailer_mine();
//code to handle phpmailer
$result=$mail->Send();
if ($result) {
$mail_string=$mail->get_mail_string();
imap_append($ImapStream, $folder, $mail_string, "\\Seen");
}
funziona bene.
Puoi dare un esempio per i valori di $ ImapStream e $ cartella? Non riesco a capire quale dovrebbe essere il valore corretto per $ folder, specialmente quando non ho accesso a livello di file al server di posta (sto usando con Gmail). – Zeeshan
- 1. Invia email asincrona con phpmailer
- 2. php imap get dall'indirizzo email
- 3. PHPMailer, inviato allegato come altro nome
- 4. Invia email con PHPMailer - incorpora immagine nel corpo
- 5. Come scaricare solo nuove email da imap?
- 6. PHP recupero oltre 20000 email imap
- 7. SetFrom PHPMailer non funziona
- 8. E-mail che non vanno da Mandrill a Gmail
- 9. Phpmailer AddBcc non funzionante
- 10. come leggere le email con caratteri speciali
- 11. PHPMailer $ mail-> Da intestazioni che non funzionano con gmail
- 12. Gestione degli errori con PHPMailer
- 13. File zip inviato con perl Email :: Il mittente è danneggiato
- 14. Ottieni tutte le variabili inviate con POST?
- 15. Android come ottenere inviato/ricevuto email
- 16. Contare il numero di email in gmail usando IMAP
- 17. Invio di email da PHPMailer utilizzando i proxy Indirizzi IP
- 18. Criteri IMAP con più OR
- 19. PHPMailer AddAddress()
- 20. creazione di cartelle in IMAP non funziona
- 21. looping phpmailer
- 22. PHPmailer invia HTML CODICE
- 23. phpmailer: Rispondi usando solo l'indirizzo "Rispondi a"
- 24. Weird Hazelcat IMap # put behavior()
- 25. SLComposeViewController Visualizzazioni inviate all'app e non rispondono
- 26. PHPMailer su server Godaddy, installazione corretta?
- 27. Le immagini non copiati nella cartella di output a Pelican
- 28. git imap-inviare con Gmail
- 29. Notifiche di IAudioSessionManager2 non inviate
- 30. TCPDF Salva il file nella cartella?
Esatto. Dal 13 luglio 2012. Vedi questo registro delle modifiche: https://github.com/PHPMailer/PHPMailer/blob/master/changelog.md#version-522-beta1-july-13-2012 Inoltre, è necessario controllare http: // php.net/manual/en/function.imap-append.php per capire la funzione imap_append() e il parametro $ folder, e http://php.net/manual/en/function.imap-open.php per capire come ottenere $ ImapStream. – Cosmitar