我正在使用PHPMailer发送自动电子邮件(显然使用PHP作为编程语言)。 我想添加一个用TCPdf生成的PDF附件。 不幸的是我无法在我正在使用PHPMailer的php页面中生成PDF,而且我无法创建生成它的函数。 我只能用一个链接来生成它,如下所示: www.mypage.com/app-pdf/link_generate_pdf.php?IDToGenerate=131&PDFOutput=I
我以为我可以回想起PDFOutput = S的页面,并以某种方式“返回”PDF的文本并将其添加为附件。 否则,我可以使用PDFOutput = F调用该页面并将其保存到临时文件夹,然后将其附加到电子邮件中。
问题是我不知道如何“调用”一个页面,因为它是一个函数,并返回召回页面实际返回的内容。
你有什么建议吗? 谢谢
编辑:我现在明白了这个问题!问题是只能从身份验证(登录页面)访问URL。我认为,当我登录时,脚本自动能够读取页面。我该如何解决这个问题?答案 0 :(得分:1)
使用此选项先将文件保存在服务器上,然后附加
file_put_contents("Tmpfile.pdf", fopen("http://example.com/file.pdf", 'r'));
附加为
$mail->AddAttachment('path_to_pdf/Tmpfile.pdf', $name = 'Name_of_pdf_file',
$encoding = 'base64', $type = 'application/pdf');
希望这有帮助
编辑:试试这个。在这里工作正常
file_put_contents("path_to_pdf/Tmpfile.pdf",
file_get_contents("http://example.com/file.pdf"));