将发送Swiftmail无电子邮件

时间:2014-03-04 10:56:22

标签: php email symfony swiftmailer

我在Symfony2中创建了一个联系表单。我想通过电子邮件发送它,我也希望通过Symfony2将内容保存在数据库中,为此我创建了一个表单。保存到数据库中工作正常,但我从未在生产服务器上收到电子邮件。

public function createAction(Request $request) {
    $entity = new Contact();
    $form = $this -> createCreateForm($entity);
    $form -> handleRequest($request);

    $message = \Swift_Message::newInstance() -> setSubject('Hello Email') -> setFrom('newsletter@donaci.ch') -> setTo('me@joelschmid.ch') -> setBody($this -> renderView('DbeDonaciBundle:Contact:email.html.twig', array('entity' => $entity)));
    $this -> get('mailer') -> send($message);


    $em = $this -> getDoctrine() -> getManager();
    $em -> persist($entity);
    $em -> flush();

    $this -> get('session') -> getFlashBag() -> add('messageSent', 'Die Nachricht wurde erfolgreich abgeschickt. Wir werden uns sobald als möglich bei dir melden!');



    return $this -> render('DbeDonaciBundle:Aboutus:index.html.twig', array('entity' => $entity, 'form' => $form -> createView(), ));
}

在本地,这似乎有效,如果我访问开发人员工具栏中的消息块,我已准备好电子邮件:

    Mailer default (default mailer)

Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset=utf-8
MIME-Version: 1.0
Date: Tue, 04 Mar 2014 10:54:07 +0100
Message-ID: <725cbd36eaafdc75ede3eeb016a60b1d@localhost>
From: newsletter@donaci.ch
Subject: Hello Email
To: me@joelschmid.ch
A contact enquiry was made by asdf at 2014-03-04 10:54.

Reply-To: asdf@memememe.com
Subject: asdf
Body:
Name: asdf
E-Mail: asdf@memememe.com
Message: asdf 
Website: asdf

如果执行:

,假脱机中也没有电子邮件
php app/console swiftmailer:spool:send

以下是带有mailjet的调整后的配置文件:

mailer_transport: smtp 
mailer_host: in.mailjet.com 
mailer_user: 3d32164c00c29asdflkjabf2d1e45b 
mailer_password: 342f84sdaj7a3d374eb85523dfad246 
locale: en 
secret: 34af84cbbb7a3d12li552cfgad246

有什么想法吗?在此先感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

它应该与smtp服务器有关:如果symfony debug向你显示邮件,那肯定是这个。

尝试使用专用的smtp服务(例如mailjet(www.mailjet.com))处理您的电子邮件发送。

相关问题