Сообщение об ошибке Zend_Mail с $ mail-> setReplyTo - PullRequest
1 голос
/ 05 марта 2010

Почему setReplyTo ($ reply_to_mail) отправляет электронное письмо на $ reply_to_mail? Разве он не должен просто добавить адрес электронной почты в поле для ответа в сообщении электронной почты?

Обычно при отправке почты с формы веб-сайта и заполнении поля для ответа, сообщение отправляется на электронную почту для ответа и на электронную почту нашего администратора.

Почему дублирует электронную почту? Следует отправлять только нашему администратору по электронной почте.

class Helper_Mail extends Zend_Controller_Action_Helper_Abstract
{
    public function direct($email,$from,$message,$title,$replyto='')
    {
        $this->sendmail($email,$from,$message,$title,$replyto);
    }

    private function sendMail($email,$from,$message,$title,$replyto)
    {
        /* Configuring SMTP settings */
        $config = array(
            'auth' => 'login',
            'ssl' => 'tls',
            'username' => 'adminmail@gmail.com',
            'password' => 'password',
            'port' => 587);

        $smtpHost = new Zend_Mail_Transport_Smtp('smtp.gmail.com',$config);
        Zend_Mail::setDefaultTransport($smtpHost);

        $mail = new Zend_Mail('UTF-8');
        $mail->setBodyHtml($message);
        $mail->setFrom('adminmail@gmail.com', $from);
        $mail->addTo($email);
        $mail->setSubject($title);

        if(!empty($replyto))
        {
            $mail->setReplyTo($replyto);
        }

        try
        {
            $mail->send();
        }
        catch(Zend_Mail_Exception $e)
        {
            echo $e->getMessage();
        }
    }
}

Ответы [ 2 ]

2 голосов
/ 19 октября 2012

Вы можете использовать Zend_Mail :: setReplyTo (), если вы используете версию Zend> 1.8

Если нет (<= 1.8), вы должны использовать Zend_Mail :: addHeader ('Reply-To', 'replymail@example.com') </p>

0 голосов
/ 19 сентября 2010

Это была ошибка, исправленная в новых версиях.;)

...