File Upload
| |
|
Данный скрипт предназначен для получения различных файлов от посетителей
сервера. Скрипт принимает файл, кладет его в определенный каталог, и в
случае необходимости извещает Вас об этом событии по электронной почте.
Скрипт использует
технологию шаблонов для форматирования и отправки письма по email.
Для нормальной работы скрипта необходимо создать директорию "upload"
в своем домашнем каталоге. Без этой директории скрипт работать не будет.
Учтите, что файлы создаются с правами административного эккаунта, и как
следствие учитываются при подсчете оплачиваемого дискового пространства.
Если Вы не следите постоянно за своим сервером, не создавайте директории
upload, иначе случайные хулиганы могут закачать Вам много больших файлов.
Максимальный размер файла, который можно передать с помощью скрипта upload.pl - 3 Мб.
CGI скрипт upload.pl должен получать следующие параметры:
- incoming - имя удаленного файла (input type="file")
- outcoming - под каким именем записывать (необязательный параметр)
- overwrite - перезапись файла.
PATH_INFO (путь после имени скрипта) должен указывать на шаблоны, без
указания расширения.
В данном приложении используются следующие шаблоны:
- .mes - email, который будет послан Вам.
- .ok - сообщение посетителю об удачном получении файла сервером
- .err - сообщение посетителю о неудачном получении файла сервером
В шаблонах могут использоваться следующие переменные (помимо
стандартных):
- ^incoming - имя полученного файла.
- ^no_file - если посетитель пытается послать
несуществующий или пустой файл.
- ^file_exists - если не включен overwrite, а файл
уже существует.
Пример формы
<FORM METHOD="POST" ACTION="/cgi/upload.pl/templates/upload" ENCTYPE="multipart/form-data">
<INPUT TYPE="file" NAME="incoming" VALUE="30"><br>
<INPUT TYPE="checkbox" NAME="overwrite"> Переписать существующий файл<br>
<INPUT TYPE="submit" NAME="Upload" VALUE="Послать файл">
</FORM>
Пример файла .mes
To: vash@email
From: upload_script@hosting.zenon.ru
Subject: File Upload
Пользователь (^user_address) переслал Вам файл ^incoming.