Иллюстрированный самоучитель по PHP

Проектирование

Итак, в первом файле нашего файлового менеджера должна располагаться форма, содержащая список файлов и папок в текущей директории (выводимый специальным сценарием, позволяющим также перемещаться по вложенным папкам) со списками возле каждого названия файла или папки, а в низу формы должны располагаться четыре кнопки типа submit с различными именами.

Но простого выбора действия недостаточно для начала его выполнения. Перед тем, как совершать работу, у посетителя необходимо еще выяснить:

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

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

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

После выполнения действий вполне логично осуществлять автоматический переход на основную страницу файлового менеджера.

Итого для реализации сценария потребуется создать три файла:

  • основной, отображающий список файлов в директории, позволяющий также перемещаться по дереву папок, отмечать нужные и выбирать тип действия над ними. Назовем его index.php.
  • файл запросов, запрашивающий у посетителя информацию для совершения выбранного действия – место назначения копирования, новые имена для переименованных файлов, имя для новосозданной папки или выдающий запрос на подтверждение удаления. Назовем его zapros.php.
  • файл действия, собственно выполняющий выбранное действие, а после его выполнения – автоматически перенаправляющий посетителя на основной файл.

Графическую схему смотрите на рис. 11.2.

Иллюстрированный самоучитель по PHP › Файловый менеджер › Проектирование
Рис. 11.2. Схема сценария файлового менеджера

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

Что ж – от общих слов перейдем к самому тексту файлов сценария.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.