Как прикрепить файл (ы) в php mailer на той же странице php? - PullRequest
0 голосов
/ 15 мая 2018

Я использую php mailer для отправки писем с вложениями.Я хочу, чтобы файлы были прикреплены на той же странице.моя форма,

<form method="POST" action="#" enctype="multipart/form-data"> 

<label>Files to upload:</label>
<input type="file" name="files[]" multiple/>

<button type="submit" name="btnSend" value="Send">Send</button>

</form>

И мой фрагмент php-кода:

if (isset($_POST['btnSend'])) {
    $mail = new mymailer();
    include DOC_ROOT . 'include/contact-email-template.php';
    $mailArray = array("my-email-address");
    $subject = "Contact Form";
    $from = $email;
    $mail->sendMail($from, $mailArray, $subject, $admin_template);
    $emailsent = 1;
    $mod_email = "Success";

    /* redirect to home after success */
    if ($emailsent == 1) {

        unset($_POST['firstname']);
        unset($_POST['lastname']);
        unset($_POST['email']);
        unset($_POST['phone']);
        unset($_POST['message']);

        $mod_email = "Show";
                }
}

Как я могу прикрепить файлы, которые я выбрал из input type="file" Пожалуйста, помогите.

PS: Сообщения с этим кодом отправляются нормально, даже когда я установил действие для внешнего файла, сохранил выбранное изображение на диске и прикрепил их. Я просто хочу знать, как прикреплять файлы к той же странице.

1 Ответ

0 голосов
/ 15 мая 2018

Вы можете $ _FILES и прикрепить выбранный файл в тело письма на той же странице

if(!empty($_FILES)){
    $i = 0;
    foreach($_FILES['files']['tmp_name'] as $file){
        echo $mail->AddAttachment($_FILES['files']['tmp_name'][$i], $_FILES['files']['name'][$i]);
        $i++;
    }
}
...