Мониторы
Представление в Internet содержимого каталога
средствами ASP
Христофоров Юрий
В этой статье я на примере расскажу, как используя ASP
(Active Server Pages) можно построить содержимое каталога Web аналогично тому,
как это выглядит на FTP сервере.
Постановка задачи: На Web-сервере есть каталог,
например: C:\InetPub\wwwroot\user1. Пусть данный каталог имеет несколько
вложенных каталогов и набор файлов в этих каталогах. Примерная структура папок
представлена на Рис. 1.
Рис. 1.
В каждом из представленных на рисунке каталогах может
находиться неограниченное количество файлов, либо некоторые из каталогов могут
быть пустыми. Необходимо представить содержимое папки user1 на Web-странице в
дружественном для пользователя виде.
Интересной особенностью скрипта является то, что
применяя страницу с фреймами (кадрами), можно построить меню пользователя.
Результат должен выглядеть примерно следующим образом:
Находимся в папке
C:\Inetpub\wwwroot\user1\folder1\subfolder2:
На данном скриншоте показан пример меню. Страница
menu.htm разделена на два фрейма. В левом фрейме находится файл list_files.asp,
а правый фрейм используется для отображения файлов, ссылки на которые находятся
в левом фрейме. В левом фрейме можно свободно перемещаться по папкам. Т.о.
можно организовать меню пользователя.
Решение: Ключ к решению данной задачи - это
использование MicrosoftR Scripting Library. Нас будет интересовать такой объект
этой библиотеки, как FileSystemObject. FileSystemObject предоставляет объектную
модель доступа к файловой системе. Далее, пользуясь средствами языка написания
сценариев VBScript, выполняемого на Web-сервере, можно написать одну
ASP-страницу, которая будет выполнять всю работу. Итак, приступим.
Листинг файла list_files.asp:
<%Response.Expires=0%> 'Отключаем
кэширование страницы
<HTML>
<BODY>
<!-Серверный сценарий
<%
Dim root_folder,
root_vfolder, curr_dir, curr_dir2, temp_arr
'root_folder - переменная для хранения
физического пути к корневой папке USER1
'root_vfolder - переменная для хранения
виртуального пути к папке USER1
'localhost - имя Вашего сервера
root_vfolder =
"#"7181.files/image003.jpg">
Исходный файл проекта прилагается: files.zip
Список литературы
Для подготовки данной работы были использованы
материалы с сайта http://www.activex.net.ru/
Похожие работы на - Мониторы
|