Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Quelqu'un aurait déjà essayé de se connecter à un compte mail, récupérer les messages et les forwarder à une autre adresse ?
Y'a t il un moyen "rapide" ou faut il récupérer le sujet, le body, les pièces jointes et les attachés à un nouveau message tout simplement ?
Hors ligne
oui il est possible de récupérer un mail et d'en faire directement un objet mail zf pour l'expédier ensuite.
j'ai écrit cette classe lorsque j'utilisais ZF1.0.4 il faut peut être la mettre à jour
<?php /** * Fast_Mail Add some features to Zend_Mail. * - addReplyTo * - AddEmbedded * - addAlternative * - createFromTemplate * * @package Fast * @copyright ftgroup * @see Zend_Mail */ Zend_Loader::loadClass('Zend_Mail'); class Fast_Mail extends Zend_Mail { /** * Adds a "Reply-to" address. * @param string $email * @param string $name * @return void */ public function AddReplyTo($email, $name = "") { $this->_addRecipientAndHeader('Reply-to', $name, $email); } /** * Adds an embedded attachment. This can include images, sounds, and * just about any other document. Make sure to set the $type to an * image type. For JPEG images use "image/jpeg" and for GIF images * use "image/gif". * @param string $content Path to the attachment or data. * @param string $cid Content ID of the attachment. Use this to identify * the Id for accessing the image in an HTML form. * @param string $name Overrides the attachment name. * @param string $encoding File encoding (see $Encoding). * @param string $type File extension (MIME) type. * @return Zend_Mail Provides fluent interface */ public function AddEmbedded($body, $mimeType = Zend_Mime::TYPE_OCTETSTREAM, $encoding = Zend_Mime::ENCODING_BASE64, $cid, $fileName = null) { if(is_file($body)) { $body = fopen($body); } $mp = $this->createAttachment($body, $mimeType, Zend_Mime::DISPOSITION_INLINE, $encoding, $fileName); $mp->id = $cid; return $this; } /** * Creates a Zend_Mime_Part alternative * * Attachment is automatically added to the mail object after creation. The * attachment object is returned to allow for further manipulation. * * @param string $body * @param string $mimeType * @param string $encoding * @return Zend_Mail Provides fluent interface */ public function addAlternative($body, $mimeType = Zend_Mime::TYPE_OCTETSTREAM, $encoding = Zend_Mime::ENCODING_BASE64) { if(is_file($body)) { $body = fopen($body); } $mp = $this->createAttachment($body, $type, Zend_Mime::MULTIPART_ALTERNATIVE, $encoding); return $this; } /** * Decodes a MIME encoded string and returns a Zend_Mime_Message object with * all the MIME parts set according to the given string * * @param string $message * @param string $EOL EOL string; defaults to {@link Zend_Mime::LINEEND} * @return Zend_Mime_Message */ public static function createFromTemplate($message, $EOL = Zend_Mime::LINEEND) { require_once 'Zend/Mime/Decode.php'; Zend_Mime_Decode::splitMessage($message, $headers, $body, $EOL) return Zend_Mime_Message::createFromMessage($message, $headers['boundary'], $EOL), } }
A+JYT
Hors ligne
là je récupérer bien mes Zend_Mail_Message mais je comprend pas bien l'exemple de ta classe.
Mon object Zend_Mail_Message je peux le renvoyer à une autre adresse comment ? :s
Hors ligne
ma classe ajoute juste quelque fonction à Z_M_Message
entre autre le fait de pouvoir transformer un flux mail et en faire un Z_M_M
pour l'envoyer c'est un message comme un autre tu peux utiliser les méthodes de ZF
A+JYT
Hors ligne