@PRIZRAKeee

Как отправить вложение с формы на почту не загружая файл на сервер phpmailer?

На сайте есть форма вакансии. Необходимо, чтобы после того, как пользователь выберет файл и нажмёт кнопку "отправить" - письмо вместе с файлом уходили сразу на почту. У меня получилось собирать данные с формы и отправлять их на почту, но с файлом никак не получается. Смог найти только примеры, как отправлять файл с сервера на почту, но нужно, чтобы файл уходил с формы сразу на почтовый ящик. Помогите пожалуйста.
Код html формы
<form method="post" class="sform send_resume_form resume_class" enctype="multipart/form-data">
                        <fieldset>
                            <div class="label">
                                <label for="call_order_name">Ваше имя*</label>
                            </div>
                            <input class="textbox required required_clean" type="text" name="name_form" data-div="form_item_name">
                        </fieldset>
                        <fieldset>
                            <div class="label">
                                <label for="call_order_phone">Ваш телефон*</label>
                            </div>
                            <input class="required phone phonebox required_clean" type="text" name="phone_form" data-div="form_item_phone">
                        </fieldset>
                        <fieldset>
                            <div class="label">
                                <label>Комментарий</label>
                            </div>
                            <textarea class="required_clean" rows="5" cols="27" name="message_form" data-div="form_item_message"></textarea>
                        </fieldset>
                        <fieldset>
                            <input name="file_form" type="file" id="filea">
                        </fieldset>
                        

                        <fieldset class="submit-wrap">
                       <input type="button" class="submit class_resume_form" value="Отправить" data-div="send_resume_form" data-title="send_resume_form_title" data-closeform="send_resume_form_close">
                      </fieldset>
                    </form>

Код php скрипта
<?php
$title = $_POST['title'];
$name = $_POST['name_form'];
$phone = $_POST['phone_form'];
$message = $_POST['message_form'];
$filea = $_POST['file_form'];

$to = "Тут почта";
require("lib/class.phpmailer.php");

// На всякий случай указываем настройки
// для дополнительного (внешнего) SMTP сервера.
$site['smtp_mode'] = 'disabled'; // enabled or disabled (включен или выключен)
$site['smtp_host'] = null;
$site['smtp_port'] = null;
$site['smtp_username'] = null;

class FreakMailer extends PHPMailer
{
    var $priority = 3;
    var $to_name;
    var $to_email;
    var $From = null;
    var $FromName = null;
    var $Sender = null;

}

// инициализируем класс
$mailer = new FreakMailer();

// Устанавливаем тему письма
$mailer->Subject = $title;

/// Задаем тело письма
$mailer->Body =  "Сообщение пришло с формы $title\nНаписал(а): $name\nНомер телефона: $phone\nКомментарий: $message,";

// Добавляем адрес в список получателей
$mailer->AddAddress('Моя почта', 'Моя почта');


if(!$mailer->Send())
{
  echo 'Не могу отослать письмо!';
}
else
{
  echo 'Письмо отослано!';
}
$mailer->ClearAddresses();
$mailer->ClearAttachments();
  • Вопрос задан
  • 976 просмотров
Решения вопроса 1
@BorisKorobkov Куратор тега PHP
Web developer
чтобы файл уходил с формы сразу на почтовый ящик

Нет. Только через загрузку на сервер.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы