2016-12-16 3 views
0

, так что я затрудняюсь получить довольно сложное время для получения моей почты, и я не нахожу сопоставимое решение там. Я пытаюсь отправить основное письмо через gmail с моего сайта с помощью SMTP. Все кажется правильным. Спасибо за вашу помощьLaravel 5 Mail - Gmail - AbstractSmtpTransport.php line 399: Неинициализированное смещение строки: 3

• мой аккаунт [email protected] Я установил двухэтапную аутентификацию в этой учетной записи. у учетной записи [email protected] есть пароль a123
• Я пытаюсь отправить его с моего email [email protected] для [email protected] • под gmail-settings-account и import-send mail как • у меня есть
o Маркетинг -Не псевдоним.
о почты отправлено через smtp.gmail.com
о Защищенное соединение через порт 587 O с помощью TLS • нажав редактировать инфоэтика Имя:
о Маркетинг O Адрес электронной почты: [email protected] • Нажмите «Далее» - «Редактировать адрес электронной почты» - отправьте почту через ваш SMTP-сервер. . O Настройте почту, отправляемую через серверы SMS SamsSocial.com. o В настоящее время вы используете: защищенное соединение на порту 587 с использованием TLS o Чтобы отредактировать, пожалуйста, настройте ваши предпочтения ниже. о SMTP сервер: smtp.gmail.com о Порт: Имя пользователя: [email protected] о Пароль: OTHERPASS о Защищенное соединение с использованием протокола TLS (рекомендуется)

Я получаю следующее сообщение об ошибке, и это принимая невероятно долгое время

ErrorException в AbstractSmtpTransport.php линии 399: Неинициализированная строка смещения: 3 в AbstractSmtpTransport.php линии 399 в HandleExceptions-> HandleError ('8', 'смещения Неинициализированная строка: 3', «C: \ wamp \ www \ d \ vendor \ swiftmailer \ swiftmailer \ lib \ classes \ Swift \ Transport \ AbstractSmtpTransport.php ',' 399 ', array (' seq '=>' 8 ',' respon се»=> '334 VXNlcm5hbWU6 L', 'строка' => 'L')) в AbstractSmtpTransport.php линии 399 в Swift_Transport_AbstractSmtpTransport -> _ getFullResponse ('8') в AbstractSmtpTransport.php линии 277 в Swift_Transport_AbstractSmtpTransport-> ExecuteCommand ('AUTH LOGIN', массив ('334'), array()) в строке EsmtpTransport.php 270 в Swift_Transport_EsmtpTransport-> executeCommand ('AUTH LOGIN', массив ('334')) в строке LoginAuthenticator.php 40

контроллер

public function sendEmailReminder() 
    { 
     $user = User::findOrFail(1); 
     // dd(Config::get("mail")); 

     Mail::send('admin.marketing.emails.test', ['user' => $user], function ($m) use ($user) { 
      //i've had this with and without the from 
      $m->to('[email protected]', 'peter')->subject('This is how we do it'); 
     }); 
     return redirect('admin/marketing'); 

    } 

Test.blade.php

Hi {{$user['name']}}. this is the first email we've sent 

Config/mail.php

<?php 

return [ 
    'driver' => 'smtp', 
    'host' => env('MAIL_HOST', 'smtp.gmail.com'), 
    'port' => env('MAIL_PORT', 587), 
    'from' => ['address' => '[email protected]', 'name' => 'Marketing'], 
    'encryption' => 'tls', 
    'username' => env('MAIL_USERNAME',[email protected]'), 
    'password' => env('MAIL_PASSWORD','OTHERPASS’), 
    'sendmail' => '/usr/sbin/sendmail -bs', 
    'pretend' => false, 

]; 

.env

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

Когда я дд (Config :: Get ("почта")); - Я получаю следующее, который появляется правильно

array:9 [▼ 
    "driver" => "smtp" 
    "host" => "smtp.gmail.com" 
    "port" => "587" 
    "from" => array:2 [▼ 
    "address" => "[email protected]" 
    "name" => "Marketing" 
    ] 
    "encryption" => "tls" 
    "username" => "[email protected]" 
    "password" => "OTHERPASS" 
    "sendmail" => "/usr/sbin/sendmail -bs" 
    "pretend" => false 
] 

ответ

0

Ошибка может ввести в заблуждение, но это на самом деле вызвано тем, что аутентификация по GMAIL серверов SMTP произвел неожиданный выход. Google изменил способ работы авторизации для клиентских приложений.

Теперь необходимо получить пароль приложения для приложения, которое обращается к почте или календарю от вашего имени, и использовать этот пароль приложения вместо обычного пароля, который вы используете для Интернета. Дополнительная информация здесь: https://support.google.com/accounts/answer/185833?hl=en

+0

okay - оглядываясь назад - это на самом деле то, что ДРУГИЕ. я прошел через это, а ДРУГИЕ 16 символов. эти 16 символов должны быть разделены пробелами - после каждых 4 символов? – Pete

+0

Все вместе. У него есть кнопка копирования, которая копирует ее точно так, как она должна идти. –

+0

Так что пароль приложения не отображается, поскольку он был подключен, поскольку последняя используемая дата приложения Password заполняется так, что это не так. Если что-то не так с тем, где я вхожу в него здесь, что может быть проблемой, но это ошибка, которую я получаю. – Pete