Прикрепить файл через почту PHP

Я пытаюсь получить настраиваемую контактную форму, используя почту 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 = "[email protected]";
 $subject = "Here is a Photo";
 $mailheader = 'From: Basic Sign-up <[email protected]>' . "\r\n";
 mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
die();
?>

Я не могу заставить его прикрепить файл к отправляемому электронному письму. Что я делаю не так?


person Be Right Bacon    schedule 14.08.2012    source источник


Ответы (1)


Это не то, как работает привязанность. Использование mail() для вложений немного сложнее. Вы должны указать mail(), какая часть должна обрабатывать вложение файла, а какая часть отвечает за отображение тела письма, настроив Граница MIME. Другими словами, код следует разделить на 2 части:

  • Раздел для обработки сообщения, отправляемого в теле
  • Раздел для обработки загрузки файлов

Подробный мастер-класс здесь

ПИСЬМО PHP С ПРИЛОЖЕНИЕМ< /сильный>

Тем не менее, я бы посоветовал вам использовать очень удобный инструмент под названием PHPMailer для выполнения той же задачи. Это упрощает процесс и позволяет классу справиться со всей беготней.

PHPMailer

person asprin    schedule 14.08.2012