2017-12-25 1 views
1

데이터베이스에있는 강사의 전자 메일에 pdf 파일 시스템에 생성 된 공식 서한을 첨부하는 데 문제가 있습니다.Laravel에서 pdf 파일을 전자 메일에 첨부하십시오.

공공 기능 ($ 아이디, 요청 $ 요청) {

try { 

     $letter = Letter::where('id',$id) 
     ->update([ 
      'isApproved' => 1, 
      'approvedBy' => $request->session()->get('users.id') 
      ]); 


     $letter = Letter::where('id',$id) 
     ->first(); 

     $lecturer = User::where('id',$letter->user_id) 
     ->get(); 

     $emailBody="Hello, ".$lecturer[0]->username.",<br>". 
     "Your letter have been approved by ".$request->session()->get('users.username').".<br>". 
     "Kindly check the attachment. Thank you.<br><br>". 
     "This is system generated email. Please do-not reply on this email."; 

     mail($lecturer[0]->email, "Certification Approved", $emailBody); 

     return redirect() 
     ->back() 
     ->with('success_approve_letter','Record successfully approve'); 

    } catch (Exception $e) { 

     return redirect() 
     ->back() 
     ->withErrors(["Error: ".$e->getMessage()]); 
    } 
} 

을 승인하지만, 이메일, 그냥이를 보낼 수 있습니다.

Gmail Image

답변

0

PHP 메일의 첨부 파일을() 보내도록 link를 통해 이동하거나 이메일을 보낼 laravel email library를 사용하여주십시오, 그

0

Laravel 방법이 Mailables를 사용하는 것입니다 매우 쉽습니다. the docs의 PDF 파일 첨부 예 :

public function build() 
{ 
    return $this->view('emails.orders.shipped') 
       ->attach('/path/to/file', [ 
        'as' => 'name.pdf', 
        'mime' => 'application/pdf', 
       ]); 
} 
관련 문제