PHPForm生成PDF发送到电子邮件

PHPForm生成PDF发送到电子邮件,php,forms,pdf,Php,Forms,Pdf,我是一名PHP初学者,我想知道这是否容易做到,或者我是否必须将其外包给程序员- 基本上,当用户填写PHP表单并提交时,我需要将其生成为PDF,然后通过电子邮件发送/附加到我的电子邮件,而不是提交此表单的用户。 我已经看过tcpdf、fpdi,但我认为这些脚本都不允许我专门这么做,因为我听说它会为用户生成一个下载链接,这不是我需要的 如果有人能帮助我,我将不胜感激 问候 Tom您可以使用FPDF从数据创建PDF,并使用FPDF的输出方法,该方法还可以将生成的PDF作为字符串返回。因此,您可以将其编

我是一名PHP初学者,我想知道这是否容易做到,或者我是否必须将其外包给程序员-

基本上,当用户填写PHP表单并提交时,我需要将其生成为PDF,然后通过电子邮件发送/附加到我的电子邮件,而不是提交此表单的用户。

我已经看过tcpdf、fpdi,但我认为这些脚本都不允许我专门这么做,因为我听说它会为用户生成一个下载链接,这不是我需要的

如果有人能帮助我,我将不胜感激

问候
Tom

您可以使用FPDF从数据创建PDF,并使用FPDF的输出方法,该方法还可以将生成的PDF作为字符串返回。因此,您可以将其编码为Base64,并创建一条由多个部分组成的消息,将.pdf作为附件发送到您的收件箱

下面是从最小FPDF教程粘贴的代码副本(http://www.fpdf.org/en/tutorial/tuto1.htm )


(假设您已经在$msg字符串中定义了所需的邮件标题、多部分边界等)。

谢谢。我从其他人那里得到了同样的答案,但你解释得很好。在我的PHP发送脚本中,我假设我必须添加所有常规标签名称等?不管怎样,我都要试试。
<?php
require('fpdf.php');

$pdf=new FPDF();
$pdf->AddPage();
$pdf->SetFont( 'Arial', 'B', 16 );
$pdf->Cell( 40, 10, 'Hello World!' );

//documentation for Output method here: http://www.fpdf.org/en/doc/output.htm
$attach_pdf_multipart = chunk_split( base64_encode( $pdf->Output( '', 'S' ) ) );
$msg .= "Content-Type: application/octet-stream; name=\"attachment.pdf\"\r\n";
$msg .= "Content-Transfer-Encoding: base64\r\n";
$msg .= "Content-Disposition: attachment\r\n";
$msg .= $attach_pdf_multipart . "\r\n";