fpdfを使用してpdfファイルを生成しています。このファイルには見出しと、 postメソッド。このpdfを電子メールに添付して、ユーザーに送信できるようにしたいと考えています。私はこれを行うにはphpMailerを使用するつもりです。私はそれが電子メールに添付することができるようにpdfに名前を付けることが可能であるのだろうかと疑問に思っていますが、pdfはサーバーまたはユーザーのローカルコンピューターに保存されません。pdfファイルをローカルまたはサーバー上に保存せずに電子メールでpdfファイルを生成して送信することは可能ですか?
以下のコードは、ヘッダー配列とフォームデータをループします。それをpdfに書き出します。私は添付ファイルのパラメータに静的なpdfファイルを引き付けました。これは、pdfファイルが電子メールで送信されたかどうかをテストすることだけでした。
コード
<?php
require('fpdf.php');
require_once('mail/class.phpmailer.php');
?>
<?php
if(isset($_POST['submit'])) {
$pdf = new FPDF();
$pdf->AddPage();
$headers = ['first name', 'last name'];
$i = 0;
foreach($_POST as $k => $v) {
if($k == 'submit') continue;
$pdf->SetFont('Arial','B',16);
$pdf->write(40,$headers[$i++]);
$pdf->ln(10);
$pdf->write(40,"$v");
$pdf->ln(10);
$content = $pdf->Output('doc.pdf','F');
}
//$bodytext ='jdjdjdjdjd';
//$email = new PHPMailer();
//$email->From = '[email protected]';
//$email->FromName = 'example';
//$email->Subject = 'PDF AddAttachment';
//$email->Body = $bodytext;
//$email->AddAddress('[email protected]');
//$file_to_attach = 'file/my.pdf';
//$email->AddAttachment($file_to_attach , 'my.pdf');
//return $email->Send();
//$pdf->Output();
}
?>
は一時ファイルを作成してダウンロードすることができ、完全なソースコードは、そのファイルを削除し、電子メールを送信していますか? –