Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Доступ к локальному диску

Зоны видимости | Public Sub П2() | Префиксы имен | Глава 20. Объекты пользователя | Таймер и общая механика работы проекта | Создаем ловца | Создаем шар. Завершаем проект | Еще об объектах | Понятие об Интернет, Web-станицах и языке HTML | Создание Web-страницы |


Читайте также:
  1. B. частина програми, де змінна оголошена або, де до неї можна отримати доступ за допомогою операції надання видимості.
  2. I. Первым (и главным) принципом оказания первой помощи при ранениях верхней конечности является остановка кровотечения любым доступным на данный момент способом.
  3. I. Первым (и главным) принципом оказания первой помощи при ранениях нижней конечности является остановка кровотечения любым доступным на данный момент способом.
  4. I. Поэтому первым (и главным) принципом оказания первой помощи при ранениях является остановка кровотечения любым доступным на данный момент способом.
  5. II. Міфологічна пригода жінки‑Орфея і любовний дискурс: конфлікт інтерпретацій
  6. II. Міфологічна пригода жінки‑Орфея і любовний дискурс: конфлікт інтерпретацій 1 страница
  7. II. Міфологічна пригода жінки‑Орфея і любовний дискурс: конфлікт інтерпретацій 2 страница

Будем называть локальным диском жесткий диск чужого компьютера, на котором читается ваша Web-страница (если она читается на вашем же компьютере, то тогда локальный диск - это жесткий диск вашего компьютера). Доступом к локальному диску будем называть возможность при помощи сценария вашей Web-страницы читать, стирать или записывать информацию в файлы локального диска (примерно так, как мы это делали в 16.2 с файлами на диске нашего компьютера), а также осуществлять все другие операции с файлами и папками.

Спрашивается, хорошо это или плохо - при помощи вашей Web-страницы иметь доступ к диску чужого компьютера? Это примерно то же самое, что спросить, хорошо это или плохо - прийти к незнакомому человеку в гости и пользуясь его доверчивостью иметь доступ ко всем вещам и секретным документам в его квартире. Если вы честный человек, то ничего не украдете и подглядывать не будете. Зачем вам тогда доступ? Получается, что доступ - это плохо? Не всегда. Он часто бывает нужен в общении между знакомыми людьми, которые доверяют друг другу и которым было бы удобно считывать информацию с локальных дисков друг друга.. Или возьмите ситуацию сохранения в играх. Пользователь, играющий на вашей страничке в "Угадай число" и желающий после 20-й попытки сохраниться, должен иметь возможность это сделать. Сделать же это проще всего на локальном диске. Но для этого нужен доступ к нему со стороны сценария игры. Выходит, что без доступа все-таки не обойтись.

Создатели VBScript предоставили программистам доступ к локальным дискам, но они прекрасно понимали опасность такого доступа, поэтому вся работа с файловой системой в VBScript организована совсем по-другому, чем в Visual Basic. Вместо непосредственной работы с файлами, как мы это делали с файлами на диске нашего компьютера, организованы специальные объекты, представляющие файловую систему и обеспечивающие более безопасную работу.

Проиллюстрирую работу VBScript с локальным диском на одном-единственном примере. Пусть ваша страничка посвящена разведению слонов в Антарктиде и она настолько интересна, что побывавший на ней снова и снова туда возвращается. Вставим на страничку сценарий, единственная цель которого - напомнить пользователю, сколько раз он был на этой странице. Вот внешний вид странички после открытия (сведения об успехах разведения слонов будут приведены в следующем издании книги):

 

 

Идея сценария такова. При первом открытии страницы на данном компьютере сценарий выдает на страницу сообщение "Вы на этой страничке ни разу не были", создает на локальном диске в корне диска С: файл INFORMAT.TXT и записывает в него значение счетчика посещений - число 0.

При каждом открытии страницы сценарий ищет в корне диска С: файл INFORMAT.TXT и если находит, то считывает с него значение счетчика, увеличивает его на 1 и отображает на странице в виде "Вы здесь были 5 раз". Если же файл не найден, сценарий делает вывод, что на этом компьютере страница еще не открывалась, и делает то, что я описал в предыдущем абзаце.

Вот HTML-документ нашей страницы со включенным в него сценарием:

<html>

<h2>Кое-что о разведении слонов в Антарктиде</h2>

<script language="VBScript"><!--

 

Dim objFs 'Объект - Файловая система локального диска

Dim objFile 'Объект - Файл

Dim sAdres 'Переменная - Адрес файла на диске

Dim intSchetchik 'Переменная - счетчик посещений страницы

 

sAdres="c:\INFORMAT.TXT"

Set objFs = CreateObject ("Scripting.FileSystemObject")

If objFs.FileExists (sAdres) Then

Set objFile = objFs.OpenTextFile(sAdres, 1)

intSchetchik = objFile.ReadLine

intSchetchik = intSchetchik + 1

Document.Write "Вы здесь были " & intSchetchik & " раз"

Else

Document.Write "Вы на этой страничке ни разу не были"

intSchetchik = 0

Set objFile = objFs.CreateTextFile (sAdres)

End If

objFile.Close

Set objFile = objFs.OpenTextFile(sAdres, 2)

objFile.WriteLine (intSchetchik)

objFile.Close

Set ObjFs = Nothing

--></script>

</html>

Пояснения: Прочтите строки объявлений. Далее рассмотрим строку

sAdres = "c:\INFORMAT.TXT"

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

Set objFs = CreateObject ("Scripting.FileSystemObject")

создает экземпляр объекта Файловая система. С этого мгновения вступают в действие меры безопасности. На экране компьютера, читающего вашу Web-страницу, возникает сообщение:

 

 

которое предупреждает пользователя, что программы на этой страничке могут быть опасными и не рекомендует разрешать их выполнение. У пользователя еще есть возможность нажать на No. Мой совет прост: Если эта страничка не принадлежит вашему лучшему другу - жмите No. Теперь рассмотрим строку

If objFs.FileExists (sAdres) Then

Здесь используется метод FileExists объекта objFs, который определяет, существует ли файл по указанному адресу sAdres. Смысл строки такой: Если файл c:\INFORMAT.TXT существует, то …

 

Строка

Set objFile = objFs.OpenTextFile(sAdres, 1)

открывает объект - текстовый файл для чтения (потому что 1). Строка

intSchetchik = objFile.ReadLine

считывает из него строку и присваивает счетчику. Следующая строка увеличивает счетчик на 1, а строка

Document.Write "Вы здесь были " & intSchetchik & " раз"

записывает на страничку указанный текст.

Из дальнейших строк поясню следующие:

Set objFile = objFs.CreateTextFile (sAdres)

создает на диске файл по указанному адресу.

objFile.Close

закрывает файл, независимо от того, какая ветвь оператора If выполнялась - Then или Else.

Set objFile = objFs.OpenTextFile(sAdres, 2)

открывает файл для записи (потому что 2).

objFile.WriteLine (intSchetchik)

записывает в файл значение счетчика.

Set ObjFs = Nothing

освобождает память компьютера от объекта Файловая система.


Дата добавления: 2015-11-16; просмотров: 36 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Сценарий на Web-странице| Понятие о базах данных

mybiblioteka.su - 2015-2024 год. (0.009 сек.)