2016-09-09 12 views
0

sendgridを使用してアプリケーションからメールを送信していますが、添付ファイル(ページ内で生成され、変数として保存されている)を追加するまでは問題ありません。Sendgrid添付ファイル - pdf php

PDFは、私は次のコードを使用していますが、任意の運を持っていないです、私は標準のPHPのメール機能を使用している場合しかし、私は私のsendgridメールにこれを追加したい送信:

 $sendgrid = new SendGrid('SENDGRID_KEY'); 
     $email = new SendGrid\Email(); 
     $email 
     ->addTo('[email protected]') 
     ->addBcc('[email protected]') 
     ->setFrom('[email protected]') 
     ->setSubject('Example') 
     ->setFiles($pdfdoc) 
     ->setHtml($example_html); 

     $sendgrid->send($email); 
     echo "you just sent a mail! <br>"; 

私がしました私は次のエラーメッセージを受け取ります:

[09-Sep-2016 03:55:19 UTC] PHP致命的なエラー:Uncaught exception 'Guzzle \ Common \ Exception \ InvalidArgumentException 'メッセージ付き'%PDF-1.4を開くことができません 3 0 obj

誰もこれを行う方法の考えがありますか?

+0

このhttps://sendgrid.com/docs/Classroom/Build/Add_Content/attachments.htmlをお読みになりましたか? –

+0

実際には、添付ファイルを記述することとは別に行う方法を実際には説明していません。 – user1419810

+0

使用しているsendgridのバージョンについては言及していませんが、このリンクをたどってコードhttps: //sendgrid.com/docs/Integrate/Code_Examples/v2_Mail/php.htmlこれはバージョン2です。 –

答えて

0
`#Solved with using web api v2 Curl version like this 

$fileName = 'filename.pdf'; 
$image_data = file_get_contents('gs://my-bucket/filename.pdf'); 

#sending part 

$params = array(
'api_user' => $user, 
'api_key' => $pass, 
'x-smtpapi' => json_encode($json_string), 
'to'  => '[email protected]', 
'subject' => 'your subject', 
'html'  => 'testing body', 
'text'  => 'testing body', 
'from'  => '[email protected]', 
'files['.$fileName.']' => $image_data 
); 

$request = $url.'api/mail.send.json'; 
関連する問題