Последний сценарий, AjaxMailAttachment.php, служит для выполнения операции загрузки определенного вложения. Данный сценарий при¬нимает в строке запроса единственный параметр - числовой иденти¬фикатор вложения. Для своей работы он требует подключения библио¬теки РОРЗЫЬ, а также файлов config. inc. php и AjaxMail. inc. php:
<?php
require_once("inc/config.inc.php");
require_once("inc/pop31ib/pop3.class.php");
requi re_once("inc/pop311b/pop3message.class.php"); \ require_once("inc/pop31 ib/pop3header.class.php"); ,;' require_once("inc/pop31ib/pop3attachment.class.php");
require_once("inc/AjaxMail.inc.php");
1|;Ј&d: = $_GET["id"]; ШхШШШШ $mailbox = new AjaxMailboxO; . $attachment = $mailbox->getAttachment($id);
header("Content-Type: $attachment->contentType")!Ф header("Content-Disposition: attachment; filename=$attachment->f'
-A ech6-;$ATTACH^nft>AV^ ФА:'ХХ?Ф
Ф::жШхФк, 1'ЛЖШ^^^Ш^ЖЩШЖШ^£Ш^Ш^^Ш:и^.
После подключения всех необходимых файлов из строки з влекается идентификатор вложения и сохраняется в переме Затем создается экземпляр класса AjaxMailbox и вызывается его get Attachment), с помощью которого извлекается информация о ном вложении. Далее устанавливается заголовок, определяю содержимого вложения (берется из свойства $attachment->conte и заголовок, определяющий его расположение, - имя файла ния. Этот второй заголовок решает две задачи. Во-первых он в ет броузер вывести диалоговое окно, в котором пользователь выбрать, что делать с файлом: открыть его или сохранить на вторых, он предлагает имя файла, которое будет использо-умолчанию для сохранения вложения на диске. Последняя ч~ нария отправляет содержимое вложения, успешно подражая ции прямой загрузки файла.