0

我正在尝试使用 PHP 邮件获取自定义联系表单,让用户附上照片,然后将其发送给 PHP 邮件代码中列出的收件人

<input type="file" id="file" name="file">

表格代码如下;

<form action="register-mail.php" method="POST" enctype="multipart/form-data">
 <input type="file" id="file" name="file">
 <input type="submit" value="Submit">
</form>

PHP邮件代码如下;

<?php $file = $_FILES['file'];
 $formcontent="Email Text Content";
 $recipient = "fake@email.com";
 $subject = "Here is a Photo";
 $mailheader = 'From: Basic Sign-up <fake@email.com>' . "\r\n";
 mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
die();
?>

我似乎无法将文件附加到正在发送的电子邮件中。我究竟做错了什么?

4

1 回答 1

4

依恋不是这样运作的。使用mail()for 附件比这要复杂一些。您必须mail()通过设置MIME Boundary来判断哪个部分应该处理文件附件以及哪个部分负责显示电子邮件正文。换句话说,代码应该分为两部分:

  • 处理正文中发送的消息的部分
  • 处理文件上传的部分

详细教程在这里

带附件的 PHP 电子邮件

但是,我建议您使用一个非常方便的工具 PHPMailer 来完成相同的任务。它简化了流程,让班级处理所有的跑腿工作。

PHPMailer

于 2012-08-14T23:03:33.523 回答