J'ai un problème étrange et je ne sais pas comment résoudre ce problème. J'ai créé un script dans l'un de mes contrôleurs Zend Framework qui permet à un administrateur de se connecter, de télécharger un fichier PDF et de l'envoyer en pièce jointe à tous ceux qui sont abonnés à la liste de diffusion. Le problème est que certains utilisateurs signalent qu'ils ne peuvent pas ouvrir la pièce jointe PDF, que le fichier est corrompu. Je pense que cela n'arrive qu'aux utilisateurs d'AOL, mais je ne suis pas positif. Avez-vous déjà rencontré ce problème? Ou peut-être que ce n'est pas un problème avec AOL, mais quelque chose ne va pas avec mon code?Zend Framework: Certains utilisateurs de messagerie obtiennent des erreurs lorsqu'ils tentent d'ouvrir des pièces jointes PDF?
Voici le code qui fait le travail:
Aussi, j'utilise la version ZF 1.6.0. Je ne sais pas si c'est pertinent.
//assuming the form is valid:
$table = new Subscribers();
$rowset = $table->fetchAll();
foreach ($rowset as $row) {
$mail = new Zend_Mail();
$mail->setBodyText($form->getElement('body')->getValue())
->setFrom('[email protected]', 'Weekly Update')
->addTo($row->email)
->setSubject($form->getElement('subject')->getValue());
$fileLocation = $form->getElement('attachment')->getValue();
$fileContents = file_get_contents($fileLocation);
$attachment = $mail->createAttachment($fileContents);
$attachment->filename = str_replace(Zend_Registry::get('config')->downloadsLocation . '/', '', $fileLocation);
$mail->send();
}
Vous devez les utilisateurs de vous fournir le message source, alors vous déplacez cela dans une boîte aux lettres et voyez si vous pouvez l'ouvrir. Selon la taille de la pièce jointe, il pourrait y avoir un problème, etc. – Till