Введение в ASP:
Active Server Pages(ASP)-это технология для создания Web-узлов, с динамическими, платформонезависимыми страницами. По сути ASP - это альтернатива CGI.ASP страницы работают также, как и PHP. В HTML код страницы вставляется сценарий, ограниченный специальными тегами. При запросе страницы, сервер к HTML коду добавляет результат работы сценария, и отсылает пользователю.Код сценария не отсылается.
ASP страницы "понимают" передачу параметров в адресе (www.site.dom?p1=v1&p2=v2) и HTML форме (методы GET и POST).Чаще всего в ASP используется VBScript. Его, сценарное ядро, считаетязыком "по умолчанию" (также, как и в HTML страницах - JavaScript).В ASP страницах (*.asp) сценарий выполняемый на сервере заключается между тегами <% ... %> и <SCRIPT RUNAT="SERVER">...</SCRIPT>.Если Вы хотите чётко определить язык сценария, используйте <%@LANGUAGE="VBSCRIPT"%> или <SCRIPT LANGUAGE="VBSCRIPT" RUNAT="SERVER"></SCRIPT>.Учтите, что подобное указание можно делать один раз для одной ASP-страницы.
Для взаимодействия с пользователем ASP добавляет к VBScript несколькодополнительных объектов:Response, Request, Response, Server, Session, Application. Эти объекты доступны в любом месте страницы, без предварительного объявления.
Response-этот объект отвечает за содержимое сьраницы, получаемой пользователем. В общих чертах: сценарное ядро помещает в него текст страницы дотега <% затем результат работы сценария. После этого оно приступает к обработке HTML кода после %>.
Объекты ASP
Response
Response.ContentType="text/html" - задаёт mime-тип содержимого, текущей страницы.
Response.Cookies(имя)(ключ)=значение - записывает значения cookies.
Response.Expires=время - Устанавливает промежуток времени, по истечении которого, страница в кэше считается устаревшей. При время=0 страница устаревает при получении.
Response.ExpiresAbsolute=#дата# - Учтанавливает дату, после которой страница считает устаревшей.
Response.Status = "404- Not Found" - Задаё строку состояния, передаваемую броузеру. Используется для передачи диагностических сообщений.
Response.AddHeader имя, значение - Позволяет добавить к Web-странице пользовательский заголовок.
Response.AppendToLog строка - Добавляет информацию в запись в журнале Web-сервера, относящуюся к данной передаче страницы.
Response.BinaryWrite данные - Записывает в страницу двоичные данные для использования клиентскими объектами.
Response.Clear - Очищает буфер вывода ASP-страницы
Response.End - Прекращает обработку сценария и отсылает страницу клиенту
Response.Flush - Очищает буфер и отсылает его содержимое клиенту
Response.Redirect URL - Перенаправляет броузер по указанному URL.
Response.Write данные - записывает текстовые данные в буфер HTML-страницы. Эту команду можно заменить знаком равенства.
<%
Response.Write "Привет"
%><BR>
<%="Пока" %>
Request
Request.ClientCertificate(переменная) - Набор значений сертификата клиента.
Request.Cookies(переменная)-набор Cookies, переданных в заголовке HTTP клиентом.
Request.Form(имяПоля) - набор данных передаваемых серверу в форме. (методы GET и POST).
Request.QueryString(имяПоля) - набор данных преданных клиентом в гиперссылке.
Request.ServerVariables(переменная) - набор переменных сервера, полученных от клиента.
Объекты Request и Response осуществляют взаимодействие ASP страницы с клиентом, запрос и ответ соответственно.
Server
Этот объект позволяет сценарию обращаться к серверу.
Естественно, все установки можно менять только, если Вы имеете доступ к ним.
Server.ScriptTimeOut=время -свойство устанавливает время, которое даётся сценарию на исполнение. По истечению этого времени клиент получает сообщение об ошибке.
Set Переменная=Server.CreateObject(objID)-создаёт ActiveX объект. К примеру:
Set FSO=Server.CreateObject("Scripting.FileSystemObject").
Server.MapPath(виртуальный путь)-возвращает полный путь, соответсвующий виртуальному.
Server.HTMLEncode(строка)-Кодирует строку в соответствии с требованиями HTML: <P>=<P>.
Server.URLEncode(строка) - Кодирует строку, по правилам создания URL. "text text"="text+text".
Объекты Application и Session позволяют запоминать значения некоторых параметров, между вызовами разных сценариев. Если Вы находитесь, на беплатном ASP-хостинге, скорее всего, эти объекты будут Вам недоступны.
Сами по себе Application и Session - это наборы переменных, с дополнительными методами. так называемые глобальные переменные.
Application-Объект обозначает текущее приложение. Вызов переменных осуществляется Application("имяПеременной"). Так как существует возможность одновременного доступа к одной и той же переменной, используется код.
<%
Application.Lock "Запрещается доступ для других
Application("User") = 1
Application.UnLock
%>
Session-объект обозначающий текущую сессию.
Session.SesionID-число, обозначающее текущую сессию.
Session.Timeout-время длительности сессии. По умолчанию 20 минут.
Session.Abandon-Закрывает сессию.
Приложение запукается тогда, когда страницу каталога запрашивает первый пользователь и закрывается с окончанием последней сессии.
Сессия начинается при обращении пользователя к странице каталога и заканчивается через 20 минут (см. Session.TimeOut) после последнего обращения.
Для задания глобальных переменных существует специальный файл GLOBAL.ASA. (Бесплатные хостинги могут не поддерживать глобальные переменные).
Синтаксис GLOBAL.ASA
<SCRIPT LANGUAGE="VBSCRIPT" RUNAT="SERVER">
Sub Session_OnStart
"Код для начала сессии
End Sub
Sub Session_OnEnd
"Код для завершения сессии
End Sub
Sub Application_OnStart
"Код для зауска приложения
End Sub
Sub Application_OnEnd
"Код для завершения приложения
End Sub
</SCRIPT>
Пример:
<SCRIPT LANGUAGE="VBSCRIPT" RUNAT="SERVER">
Sub Session_OnStart
Session("Site")="MSVBasic"
Session("Email")="EugeneO@rambler.ru"
End Sub
</SCRIPT>