Bonjour,

Après quelques semaines de manipulation de Zend_Mail, je rencontre un problème, a priori, insoluble puisque mes nombreuses questions à Google ne me retournent strictement rien.

Mon soucis est lié à l'utilisation de la fonction appendMessage que je vous présente là :
Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
    /**
     * append a new message to mail storage
     *
     * @param  string                                     $message message as string or instance of message class
     * @param  null|string|Zend_Mail_Storage_Folder       $folder  folder for new message, else current folder is taken
     * @param  null|array                                 $flags   set flags for new message, else a default set is used
     * @throws Zend_Mail_Storage_Exception
     */
     // not yet * @param string|Zend_Mail_Message|Zend_Mime_Message $message message as string or instance of message class
    public function appendMessage($message, $folder = null, $flags = null)
    {
        if ($folder === null) {
            $folder = $this->_currentFolder;
        }
 
        if ($flags === null) {
            $flags = array(Zend_Mail_Storage::FLAG_SEEN);
        }
 
        // TODO: handle class instances for $message
        if (!$this->_protocol->append($folder, $message, $flags)) {
            /**
             * @see Zend_Mail_Storage_Exception
             */
            require_once 'Zend/Mail/Storage/Exception.php';
            throw new Zend_Mail_Storage_Exception('cannot create message, please check if the folder exists and your flags');
        }
    }

Je souhaite l'utiliser pour enregistrer un mail dans le dossier "brouillon" sur mon stockage distant IMAP. J'utilise donc le script suivant pour mes tests :
Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
    $mailAuth = new Mail_Model_Auth_Imap();
    $mailSave = $mailAuth->init('INBOX.Drafts');
    $mailSave->appendMessage('test', $mailSave->getCurrentFolder(), array(Zend_Mail_Storage::FLAG_SEEN));

Malheureusement, il me renvoie une erreur alors que le dossier et le flag sont corrects.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
cannot create message, please check if the folder exists and your flags
#0 /home/****/trunk/application/mail/controllers/WriteController.php(58): Zend_Mail_Storage_Imap->appendMessage('test', 'INBOX', Array)
#1 /home/****/trunk/library/Zend/Controller/Action.php(513): Mail_WriteController->indexAction()
#2 /home/****/trunk/library/Zend/Controller/Dispatcher/Standard.php(289): Zend_Controller_Action->dispatch('indexAction')
#3 /home/****/trunk/library/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))
#4 /home/****/trunk/library/Zend/Application/Bootstrap/Bootstrap.php(97): Zend_Controller_Front->dispatch()
#5 /home/****/trunk/library/Zend/Application.php(366): Zend_Application_Bootstrap_Bootstrap->run()
#6 /home/****/trunk/www/index.php(13): Zend_Application->run()
#7 {main}
Je vous remercie par avance pour votre aide,
Amicalement, Jean-Remy.