Использование swiftmailer и отправка вложений

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

<?php
if (($_POST)) {

$success = $error = false;

$post = new stdClass;

foreach ($_POST as $key => $val)
    $post->$key = trim(strip_tags($_POST[$key]));

    $dir = dirname(__FILE__);

    ob_start();
    require_once($dir.'/html.php');
    $html_message = ob_get_contents();
    ob_end_clean();

    require_once($dir.'/swift/swift_required.php');

    $mailer = new Swift_Mailer(new Swift_MailTransport());

    $message = Swift_Message::newInstance()
                   ->setSubject('Imperial Order') // Message subject
                   ->setTo(array($post->email => $post->name, '[email protected]' => 'Janet McCauley')) // Array of people to send to
                   ->setFrom(array('[email protected]' => 'Imperial Order'))
                   ->setBody($html_message, 'text/html') // Attach that HTML message from earlier
                   ->attach(Swift_Attachment::fromPath($_FILES['attachment']['tmp_name'])->setFilename($_FILES['attachment']['name']));

    // Send the email, and show user message
    if ($mailer->send($message))
        $success = true;
    else
        $error = true;      
}
?>

Я полагаю, что это как-то связано с foreach, но если я попытаюсь извлечь это, он нарушит весь код. Если кто-то может помочь, это было бы здорово. Причина, по которой я убираю проверку, заключается в том, что я хочу сделать это на стороне клиента, а не на стороне сервера.

Ответы на вопрос(1)

Ваш ответ на вопрос