ZF Mail проблема с вложениями - PullRequest
0 голосов
/ 06 июня 2009

Почему я получаю одно и то же вложение дважды с этим кодом!?

 $mailer = new Zend_Mail('UTF-8');
 $mailer->setFrom($group_email,$group_name);
 $mailer->setSubject($title);
 $mailer->setBodyHtml($full);

 $fileContents = file_get_contents('test.jpg');
 $attachment = $mailer->createAttachment($fileContents);
 $attachment->filename = "test.jpg";
 $mailer->addAttachment($attachment);

        //get all subscribers
        $i=0;
        foreach ($subscribers->getGroupUsers($group_id) as $sub){
            if ($i==0){
                $mailer->addTo($sub->email);
            }
            else {
                $mailer->addBcc($sub->email);
            }
            $i++;
        }

 $mailer->send(); 

Ответы [ 3 ]

1 голос
/ 06 июня 2009

Ну проблема актуальности в этой строке

$mailer->addAttachment($attachment);

Без этого все будет работать. Я не знал этого, потому что кажется логичным вызвать метод addAttachment для меня: P

1 голос
/ 06 июня 2009

Похоже, это потому, что вы используете createAttachment и addAttachment. Пожалуйста, убедитесь, что вы следуете документации для Zend_Mail , как это сделать.

Например:

$mail = new Zend_Mail();
// build message...
$mail->createAttachment($someBinaryString);
$mail->createAttachment($myImage,
                        'image/gif',
                        Zend_Mime::DISPOSITION_INLINE,
                        Zend_Mime::ENCODING_8BIT);
0 голосов
/ 17 октября 2012

это работает для меня, пытаясь отправить резюме с attachmnet в Zend

                $mail = new Zend_Mail ();
                $mail->setBodyHTML ( stripslashes ($message) );

                // add attachment
                $fileContents = file_get_contents($attachemnet);
                $resume = $mail->createAttachment($fileContents);
                $resume->filename = $EmployeeDeatils['resume'];

                //$mail->createAttachment($attachemnet);
                $mail->setFrom ( $mail_template ['from_email'], $mail_template ['from_caption'] );
                $mail->addTo ( $clientemail, $employee_name );
                $mail->setSubject ($subject );
                try {
                    $mail->send ();
                } catch ( Exception $e ) {
                    $this->_helper->errorlog ( " Send mail to member with activation link : " . $e->getMessage () );
                }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...