2016-12-21 6 views
1

там я был создать функцию для отправки по электронной почте, вот мой код так:Адрес в почтовом ящике с учетом [] делает на Laravel

$row=DB::table('orders') 
 
->join("cms_members","cms_members.id","=","orders.id_cms_members") 
 
->select("orders.*","cms_members.email as email","cms_members.name as name","cms_members.phone as phone") 
 
->where('orders.id',$id_order) 
 
->first(); 
 

 
$datas = array(
 
\t \t  'name' => 'test', 
 
\t \t  'detail'=> 'test', 
 
\t \t  'sender' => '[email protected]' 
 
\t \t); 
 

 
$customPaper = array(0,0,800,800); 
 
$pdf = PDF::loadView('testing', $data)->setPaper($customPaper); 
 

 
Mail::send('emails.temp', $datas, function($message) use($pdf) 
 
{ 
 
    $message->from("[email protected]","Invoice HOP Daily rent Orders"); 
 
    $message->to($row->email)->subject('Invoice'); 
 
    $message->attachData($pdf->output(), "invoice.pdf"); 
 
});

здесь моя проблема, когда-либо я хочу чтобы отправить электронное письмо, я получаю ответ

Address in mailbox given does not comply with RFC 2822, 3.6.2. 

но если я попытаюсь распечатать электронное письмо, отправьте мне адрес электронной почты. что мне делать ?

Пожалуйста, может кто-нибудь дать мне какое-либо решение для упомянутой проблемы?

+0

Вы пытались ввести обычный адрес электронной почты в метод 'to', например' -> to ('[email protected]') '. если нет, тогда попробуйте простой адрес электронной почты, посмотрите, получаете ли вы электронные письма или нет – Qazi

+0

. вы правы . –

ответ

0

Это будет ваш код:

$row=DB::table('orders') 
->join("cms_members","cms_members.id","=","orders.id_cms_members") 
->select("orders.*","cms_members.email as email","cms_members.name as name","cms_members.phone as phone") 
->where('orders.id',$id_order) 
->first(); 

$datas = array(
     'name' => 'test', 
     'detail'=> 'test', 
     'sender' => '[email protected]' 
    ); 

$customPaper = array(0,0,800,800); 
$pdf = PDF::loadView('testing', $data)->setPaper($customPaper); 

Mail::send('emails.temp', $datas, function($message) use($pdf, $row) 
{ 
    $message->from("[email protected]","Invoice HOP Daily rent Orders"); 
    $message->to($row->email)->subject('Invoice'); 
    $message->attachData($pdf->output(), "invoice.pdf"); 
}); 

Вы должны установить use($pdf, $row) в Mail::send(), это будет получить данные $row, которые вы используете в $message->to().

Надеюсь, что это сработает!

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