我有一些问题,使用swiftmailer设置我的确认电子邮件,通常一切都设置得很好,但邮件没有发送,我的用户在我的数据库中(但当然启用设置为0)。
由于我没有symfony显示的错误,我认为这是我的gmail帐户阻止了它们,但我已将其设置为允许其他应用程序将其用作“服务器”,并且我有一个使用swiftmailer的页面发送普通邮件,工作正常。
我迷路了,谢谢你将来的帮助
我的config.yml:
swiftmailer:
transport: %mailer_transport%
host: %mailer_host%
username: %mailer_user%
password: %mailer_password%
encryption: ssl
fos_user:
db_driver: orm
firewall_name: main
user_class: UserBundle\Entity\User
service:
mailer: fos_user.mailer.default
registration:
confirmation:
enabled: true
from_email:
address: maxime.duvey@gmail.com
sender_name: Registration mail
我的config.yml:
mailer_transport: gmail
mailer_host: 127.0.0.1
mailer_user: maxime.duvey@gmail.com
mailer_password: XXXXXXXXXXX
我真的迷路了,我不明白为什么它不起作用
答案 0 :(得分:0)
可能是因为你必须打开"不太安全的应用程序"因为gmail允许您不允许您访问登录,除非它是他们提供的安全应用程序。这可以在谷歌管理控制台中找到。
有关详细信息,请参阅此处的link
使用PHPMailer时遇到了同样的问题。
但是,如果您决定将其打开,则不建议这样做。
他们在提供的链接中提到了这一点。
答案 1 :(得分:0)
现在我想起来了,可能是我的方式将新用户添加到我的数据库中:
我的控制器:
$userregister = new User();
$formregister = $this->get('form.factory')->createBuilder(FormType::class, $userregister);
$formregister
->add('firstname', TextType::class)
->add('lastname', TextType::class)
->add('email', EmailType::class)
->add('phonehome', NumberType::class)
->add('phoneportable', NumberType::class)
->add('username', TextType::class)
//->add('Password', PasswordType::class)
->add('plainPassword', RepeatedType::class, array(
'type' => PasswordType::class,
'first_options' => array('label' => 'Password'),
'second_options' => array('label' => 'Repeat Password'),
))
->add('submit', SubmitType::class);
$form = $formregister->getForm();
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid())
{
$em = $this->getDoctrine()->getManager();
$em->persist($userregister);
$em->flush();
$request->getSession()->getFlashBag()->add('notice', 'Annonce bien enregistrée.');
return $this->redirect($this->generateUrl('Contact_Action', array('id' => $userregister->getId())));
}
return $this->render('register.html.twig', array('form'=>$form->createView()));
和我的树枝:
{{form(form)}}
我不确定,也许