首页 >后端开发 >php教程 >如何使用 PHPMailer 从 PHP 表单发送文件附件?

如何使用 PHPMailer 从 PHP 表单发送文件附件?

Susan Sarandon
Susan Sarandon原创
2024-12-06 01:11:11701浏览

How to Send File Attachments from a PHP Form Using PHPMailer?

使用 PHPMailer 和 PHP 从表单发送文件附件

要附加使用 PHPMailer 和 PHP 从表单上传的文件,请按照以下步骤操作:

检索文件

在 process.php 文件的开头,包含以下代码以检索上传的文件:

if (isset($_FILES['uploaded_file']) && $_FILES['uploaded_file']['error'] == UPLOAD_ERR_OK) {
    $file = $_FILES['uploaded_file'];
}

将附件添加到 PHPMailer

检索文件后,使用 addAttachment() 将其作为附件添加到 PHPMailer function:

if (isset($file)) {
    $mail->addAttachment($file['tmp_name'], $file['name']);
}

其中:

  • $file['tmp_name'] 是上传文件存放的临时文件路径
  • $file[ 'name']是上传的原始名称文件。

示例用法

将所有内容放在一起,修改后的代码可能如下所示:

require("phpmailer.php");

$mail = new PHPMailer();

$mail->From     = [email protected];
$mail->FromName = My name;
$mail->AddAddress([email protected],"John Doe");

$mail->WordWrap = 50;
$mail->IsHTML(true);

$mail->Subject  =  "Contact Form Submitted";
$mail->Body     =  "This is the body of the message.";

if (isset($_FILES['uploaded_file']) && $_FILES['uploaded_file']['error'] == UPLOAD_ERR_OK) {
    $file = $_FILES['uploaded_file'];
}

if (isset($file)) {
    $mail->addAttachment($file['tmp_name'], $file['name']);
}

if (!$mail->Send()) {
    echo 'Message could not be sent.';
    echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
    echo 'Message has been sent.';
}

按照以下步骤操作,您可以使用 PHPMailer 发送电子邮件附件并处理 PHP 表单的文件上传。

以上是如何使用 PHPMailer 从 PHP 表单发送文件附件?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn