Загрузчик и обработчик файлов
Нужно написать скрипт загрузчика и обработчика файлов. В дальнейшем скрипт будет использоваться в конвертере форматов файлов. Можно
использовать существующие загрузчики, главное чтобы они удовлетворяли
приведенным ниже требованиям.
Примеры работающих форм на сайте http://format.click/bmp-2-jpg/ http://format.click/docdocx-2-pdf/ (переделывать их нужно потомучто не весь функционал работает и они разрозненны, а требуется использование 1
формы для всего сайта). Делать привязку к скриптам конвертера вам не требуется.
Что должен делать скрипт:
1. Загружать файл(ы)
2. Отдавать их для обработки сторонним функциям
3. По завершению обработки, подготавливать их и отдаватьпользователю
А. Загрузка файла
На старте скрипт получает информацию скриптовых переменных:
1. Какие форматы файла можно загружать (например png, bmp – скриптдолжен быть регистронезависимым к расширению файла)
2. 1 или больше 1 файлов можно загружать
Загрузка осуществляется через форму. http://data2.floomby.com/files/share/28_11_2015/21/RK4ReljuW0SMC4jQykVvAQ.jpg Форма есть в отверстанном виде.
Загрузчик должен работать в т.ч. на мобильных устройствах
1. По кнопке (открывается Проводник)
2. По ссылке (вставляется ссылка на файл)
3. Drag’n’drop –переносится один или несколько файлов
При загрузке формируется превью с максимальными размерами250х250 (ужимается по максимальному значению до 250 с сохранением пропорций).
В БД вносятся записи – айди сессии (сессией загрузки будетсчитать момент с загрузки первого файла до нажатия на кнопку Начать
конвертацию), дата, ссылка на превью, ссылка на файлы, форматы файлов. Работа с
БД ведется через PDO.
Дальнейшая передача файлов сторонним функциям происходит приклике на кнопку Начать конвертацию. Форма загрузки сменяется на окно статуса,
информирующее о ходе обработки. По окончании обработки сменяется на окно
скачивания.
Б. Передача файлов для обработки
По возможности, предусмотреть необходимые меры безопасностипри загрузке файлов.
В качестве примера функции по загрузке предлагаю двефункции: переименование названий файлов в верхний регистр и создание 3 копий
файла с именами 1.[ext],2.[ext], 3.[ext]
В. Передача результата пользователю
Новые, изменённые в результате пункта Б файлы передаютсяпользователю. Если результат составляет 1 файл, пользователю отдается новый
файл без архивации. Если же результат представляет из себя несколько файлов, то
они архивируются в ZIP.