首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PHPForm生成PDF发送到电子邮件

PHPForm生成PDF发送到电子邮件
EN

Stack Overflow用户
提问于 2011-02-08 01:47:36
回答 1查看 3K关注 0票数 0

我是PHP的初学者,我想知道这是否容易做,或者我是否要把它外包给一个程序员-

--基本上,当用户填写PHP并提交它时,我需要它生成一个PDF格式,然后它将电子邮件/附加到我的电子邮件中,而不是提交此表单的用户。

我看过tcpdf,fpdi,但我认为没有任何脚本允许我这样做,因为我听说它会为用户生成一个下载链接,这不是我所需要的。

如果有人能帮我的话,我们将不胜感激。

问候汤姆

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-02-08 14:54:47

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

下面是从FPDF教程(http://www.fpdf.org/en/tutorial/tuto1.htm )中复制粘贴的代码

代码语言:javascript
运行
复制
<?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' ) ) );

现在,使用默认的mail()函数并创建一个多部分消息,并使用这些标头将文件附加到消息。

代码语言:javascript
运行
复制
$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";

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

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4934236

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档