当前位置: 首页 > 知识库问答 >
问题:

PHP Mailer中的简单PDF文件附件

敖子安
2023-03-14

我正在尝试使用PHP mailer发送带有附加文件的电子邮件的最简单方法。

我试过用这个

   $mail ->addAttachment("path_to_pdf", "pdf_name);

但它不起作用,因为“邮件已发送”,但“PDF文件附件”未发送。

请帮我解决我的问题,我想在我想发送给收件人的电子邮件中附加一个pdf文件。谢谢

这里是我用来发送电子邮件的文件w/文件附件。

索引。html

        <html>
        <head>
        </head>
        <body>
            <form method="post" action="send_mail.php" enctype="multipart/form-data">
            To : <input type="text" name="mail_to"> <br/>
            Subject :   <input type="text" name="mail_sub">
           <br/>
             Message   <input type="text" name="mail_msg">
             <br/>
            File: <input type="file" name="file" >
            <br/>
                <input type="submit" value="Send Email">

            </form>
        </body>
    </html>

发邮件。php

      <?php

        $mailto = $_POST['mail_to'];
        $mailSub = $_POST['mail_sub'];
        $mailMsg = $_POST['mail_msg'];
       require 'PHPMailer-master/PHPMailerAutoload.php';
       $mail = new PHPMailer();
       $mail ->IsSmtp();
       $mail ->SMTPDebug = 0;
       $mail ->SMTPAuth = true;
       $mail ->SMTPSecure = 'ssl';
       $mail ->Host = "smtp.gmail.com";
       $mail ->Port = 465; // or 587
       $mail ->IsHTML(true);
       $mail ->Username = "acc.ldevera@gmail.com";
       $mail ->Password = "accountsamplepassword";
       $mail ->SetFrom("acc.sample@gmail.com");
       $mail ->Subject = $mailSub;
       $mail ->Body = $mailMsg;
       $mail ->AddAddress($mailto);
        $mail->AddAttachment('pdf_files/', 'reservation.pdf');


       if(!$mail->Send())
       {
           echo "Mail Not Sent";
       }
       else
       {
           echo "Mail Sent";
       }

    ?>

请帮我解决我的问题,谢谢!

共有1个答案

柴瀚昂
2023-03-14

这句话没有达到你的预期

$mail->AddAttachment('pdf_files/', 'reservation.pdf');

它尝试查找名为“pdf_files/”的文件,并希望添加该文件。但是,正如您现在所想象的,这不是一个正确的文件名。AddAttachment的第一个参数是文件的路径(即包含文件名的路径),第二个参数是文件名,如电子邮件中所示,文件的调用/命名方式,因此您可以在不重命名原始文件的情况下对其进行不同的调用。

因此,上面的一行应该是:

$mail->AddAttachment('pdf_files/reservation.pdf', 'reservation.pdf');
 类似资料:
  • 我使用phpmailer发送一个大约5米的大附件,但失败了。这是留言。 致命错误:F:\wamp\www\mail\class中超过了30秒的最大执行时间。smtp。php在线580 时间记忆功能定位 1 0.0010 146208{main}()。。\邮寄。php:0 2 0.0121 533592 smtp_邮件()。。\邮寄。菲律宾比索:65 3 0.0126 539672 PHPMaile

  • 问题内容: 我有一个看起来像这样的表格(简化): 在我的文件中,我使用以下代码来发送电子邮件: 电子邮件正确发送了正文,但没有附件。 我的问题 我需要将表单中的文件附加到电子邮件中并发送出去。脚本通过电子邮件发送文件后,我不在乎保存文件。 我知道我需要在某处(我假设在此行下)添加附件以进行发送。但… 我要放在文件顶部的什么位置才能拉入文件?像是用来从contact-us.php页面提取文件的东西吗

  • 需要解析一个PDF文件,以便只提取最初的文本行,并寻找不同的Python包来完成这项工作,但没有任何运气。 尝试过: tika,它给出了不同的终端错误消息,并且非常慢 pdftotext安装失败 pdf2text在“导入pdf2text”时失败,并且当更改为“pdftotext”时,即使通过显示安装了“extractor”,也无法使用“importerror:无法导入名称'extractor'”导

  • 问题内容: 所以: 我曾经使用xmail(),当我在此处添加附件时,我传递了文件名和应该包含在其中的内容。 像这样: 如何使它以相同的方式工作,所以当我从PHPmailer类进行调用时,我可以传递相同的内容或类似的内容,因此不需要在服务器上发送实际文件? 问题答案: 例如 http://phpmailer.worxware.com/index.php?pg=tutorial#3

  • 本文向大家介绍php简单实现发送带附件的邮件,包括了php简单实现发送带附件的邮件的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php简单实现发送带附件的邮件。分享给大家供大家参考。具体如下: 下面是静态html代码: sendmail.php文件代码: 希望本文所述对大家的php程序设计有所帮助。

  • 问题内容: 我想发送带有PDF附件的电子邮件。我创建了PDF文件,然后执行了以下操作,但我认为这是错误的: 在发送电子邮件之前,我可以看到附件,但是当我发送电子邮件时,它的发送没有附件,这是因为我没有正确附加文件。 问题答案: 您错了。使用代替。