2016-05-31 47 views
0

我创建了一个简单的邮件发件人。问题是[1]Laravel邮件模板与阵列

[1]:http://i.stack.imgur.com/uJHmB.png这里。我不能在邮件中添加联系人姓名。请帮助我。

我的邮件发送控制器。

public function sendMail($id) { 
    $compaign = Compaign::findOrFail($id); 
    $group = Group::findOrFail($compaign->group); 
    $contacts = Contact::all()->where('group', $group->id); 

    if($contacts->count() <= 0) { 
     Session::flash('error', 'No recipients found!'); 
     return redirect()->route('compaign.index'); 
    } 

    foreach ($contacts as $contact) { 
     $data = [ 

      'compaign' => $compaign, 
      'group' => $group, 
      'contact' => $contact, 


     ]; 

     Mail::send('mail', $data, function ($message) use ($data) { 
       $message->from($data['compaign']->femail, $data['compaign']->fname); 
       $message->to($data['contact']->email, $data['contact']->name)->subject($data['compaign']->subject); 
     }); 
    } 

    Session::flash('success', 'Successfully sent the campaign'); 


    return redirect()->route('compaign.index'); 
} 

我mail.blade.php

{!! $ compaign->内容!}

+0

是要能够从WYSWIG编辑器实例传过来的'刀片syntax'到电子邮件中的内容,并有再次使用刀片语法解析的问题? – Ohgodwhy

+0

@Ohgodwhy对不起,我不明白 –

+0

你用什么wysiwyg? –

回答

0

在你的控制器:

Mail::send('mail',array('compaign' => $data), ($message) use ($data) { 
      $message->from($data['compaign']->femail, $data['compaign']->fname); 
      $message->to($data['contact']->email, $data['contact']->name)->subject($data['compaign']->subject); 
    }); 
+0

它已经准备好了我的问题是我只能写邮件的联系人的名字。例如:你好$名字你好Calin你好Şeref像这样 –

+0

你需要像这样$ message-> from('[email protected]','Name')对不对? – DsRaj

+0

不,我需要这样的:您好{{username}},这是您的电子邮件地址:{{email}}。我想发送像这样的多邮件。 。 –

0

这应该工作:

public function sendMail($id) 
{ 
    $compaign = Compaign::findOrFail($id); 
    $group = Group::findOrFail($compaign->group); 
    $contacts = Contact::where('group', $group->id)->get(); 

    if(! $contacts->count()) { 
     Session::flash('error', 'No recipients found!'); 
     return redirect()->route('compaign.index'); 
    } 

    $data = [ 
     'compaign' => $compaign, 
     'group' => $group, 
     'contacts' => $contacts 
    ]; 

    foreach ($contacts as $contact) {    
     Mail::send('mail', $data, function ($message) use ($compaign, $contact) { 
      $message->from($compaign->femail, $compaign->fname); 
      $message->to($contact->email, $contact->name); 
      $message->subject($compaign->subject); 
     }); 
    } 

    Session::flash('success', 'Successfully sent the campaign'); 


    return redirect()->route('compaign.index'); 
} 

in blade

@foreach($contacts as $contact) 
    {!! $contact->email !!} 
    {!! $compaign-fname !!} 
@endforeach 

如果不是,请转储$ compaign和$ contacts变量。

+0

我很抱歉,但没有工作:( –

+0

你是什么意思:“不工作”?您没有收到显示的电子邮件,您有错误或...?您是否倾销了$ compaign和$ contacts变量? –

+0

并且放置mail.blade的内容会很好。在这里。 –