2016-03-21 5 views
0

Я использую Laravel 5.1 и хочу отправить администратору страницы письмо с контентом контактной формы.Laravel 5 отправьте письмо в контактной форме

В моем файле .env я добавил следующие строки:

MAIL_DRIVER=smtp 
MAIL_HOST=smtp.gmail.com 
MAIL_PORT=587 
[email protected] 
MAIL_PASSWORD=adminpassword 
MAIL_ENCRYPTION=tls 

В моем контроллере я следующее:

Mail::send('Site::email', ['contactObject' => $contactObject], function ($message) use ($contactObject) { 
     $message->from($contactObject->email, $contactObject->vorname)->subject('New contact!'); 

     $message->to('[email protected]'); 
    }); 

$ contactObject == содержит форму, которая была заполнена в Форма от пользователя

Желаемый результат: Когда [email protected] получает электронное письмо, отправителем почты должно быть $ contactObject-> email

Фактический результат: Когда [email protected] получить электронную почту, отправитель почты является [email protected]

Любые идеи, что происходит не так? Спасибо

ответ

0

Вы настроили глобальный адрес из конфигурации?

Конкретно здесь: https://github.com/laravel/laravel/blob/master/config/mail.php#L49

Скорее всего, что вы установили, что и это только с помощью того, что делает эти значения пустыми должны позволить переопределить его.

В противном случае, поскольку вы используете Gmail для отправки электронной почты в Gmail, это, скорее всего, не позволит вам обмануть и действительно является функцией безопасности на их конце.

1

Попробуйте:

в живом сервере у вас нет необходимости настраивать любой тип почтовой службы.

Вы должны просто использовать это:

MAIL_DRIVER=mail 

И удалить этот код:

MAIL_DRIVER=smtp 
MAIL_HOST=smtp.gmail.com 
MAIL_PORT=587 
[email protected] 
MAIL_PASSWORD=adminpassword 
MAIL_ENCRYPTION=tls 
0

Вы должны использовать только в .env файле:

MAIL_DRIVER=mail 
MAIL_DRIVER=smtp 
MAIL_HOST=smtp.gmail.com 
MAIL_PORT=587 
[email protected] 
MAIL_PASSWORD=yourpassword 
MAIL_ENCRYPTION=tls 

После изменения .env, перезапустить службу или использовать команду php artisan config: cache и php artisan config: clear.

Смежные вопросы