2015-11-10 4 views
4

мой файл .env является:Отсутствует аргумент 1 для Осветите Support Управление :: createDriver() при отправке почты в Laravel

MAIL_DRIVER=mail 
MAIL_HOST=smtp.mandrillapp.com 
MAIL_PORT=587 
[email protected] 
MAIL_PASSWORD=**************************** 

Mailer.php

<?php namespace App\Http\Controllers; 

class Mailer{ 
    public function sendTo($email, $subject, $view, $data = array()) 
    { 
     \Mail::queue($view, $data, function($message) use($email, $subject) 
     { 
      $message->to($email)->subject($subject); 
     }); 
     return "Mail has been sent"; 

    } 

    public function welcome($formData) 
    { 
     $subject = "User Message was arrived !"; 
     $data['name'] = $formData['name']; 
     $data['email'] = $formData['email']; 
     $data['mobile'] = $formData['mobile']; 
     $data['subject'] = $formData['subject']; 
     $data['bodymessage'] = $formData['message']; 
     $view = 'emails.welcome'; 
     return $this->sendTo(['[email protected]'],$subject,$view,$data); 
    } 
} 

Контроллер илит:

public function postContactFormRequest(CreateContactFormRequest $request,Mailer $mailer) 
{ 

    $formData = $request->all(); 

    $this->mailer->welcome($formData); 

    } 

посмотреть файл:

<!DOCTYPE html> 
<html lang="en-US"> 
<head> 
    <meta charset="utf-8"> 
</head> 
<body> 
<h2>User Message</h2> 
<p><b>Email Address:</b> {{ $email }}</p> 
<h4>User Name : {{ $name }}</h4> 
<p> Phone Number :{{ $mobile}}</p> 
<p>Message :{{ $bodymessage }} </p> 
</body> 
</html> 

это мой файл: Я получаю непрерывную ошибку при попытке отправить электронную почту.

Отсутствует аргумент 1 для Illuminate \ Support \ Manager :: createDriver(), вызывается в /home/robustit/public_html/nic-website/vendor/laravel/framework/src/Illuminate/Support/Manager.php в строке 89 и определено

+0

Извлеките свой пароль Mandrill из вопроса и, возможно, измените его сейчас, вы отправили его здесь! Не отправляйте фактические пароли в будущих вопросах :) – samiles

+0

Чтобы решить эту проблему, попробуйте 'MAIL_DRIVER = smtp' в вашем файле env. – samiles

ответ

-1

У меня были проблемы с этим до сих пор.

Что вы хотите, чтобы проверить файл .env и убедитесь, что параметры базы данных прав, но и вы хотите их:

CACHE_DRIVER=file SESSION_DRIVER=file QUEUE_DRIVER=sync

По некоторым причинам я получил их, чтобы иметь пустые поля. И тогда это сработало для меня!

+0

Не уверен, что это связано с отказом при загрузке драйвера. –