Internet технологии | |
(конспект) |
Работа в Internet | Основы HTML | Web-дизайн | Web-мастеринг |
Введение
E-mail
Поиск информации
FTP
|
Введение
Ссылки и иллюстрации
Таблицы и списки
Фреймы и формы
|
Введение DreamWeaver HomeSite
Каскадные таблицы стилей CSS
Photoshop 5.5 для Web-дизайна
AdobeImageReady 2.0
Ulead GifAnimator 2.0
|
JavaScript CGI IIS 4.0 >> ASP. VBScript
Работа с БДPerl Java
|
Курс: Web-мастеринг |
Active Server Pages (ASP). VBScript. Примеры |
.. | ../ | / |
.. | ../ | / |
арифметические: + - * /
операторы сравнения: = <= >= !=
операция конкатенации: &
логическое "И": and &&
логическое "ИЛИ": or ||
Разделителями между операторами служит Enter.
if(условие1) then операторы, если условие выполняется else if(условие2) then операторы, если условие2 верно … else операторы, если ни одно условие не выполняется end if
select переменная case значение1 case значение2 операторы для значения2 … else операторы end select
do while(условие) операторы цикла loop do until(условие) операторы цикла loopМожет быть условие, когда цикл не выполнится ни разу.
x=0 do while x<5 print x x=x+1 loopРезультат: 01234
x=0 do until x=5 print x x=x+1 loopРезультат: 01234
do операторы цикла loop while(условие)
do операторы цикла loop until(условие)Тело цикла хотя бы один раз выполнится.
exit do
используется внутри блока do
.
do операторы цикла exit do loop until(условие)
for начальное значение to конечное значение step шаг (по умолчанию=1) операторы цикла next
for i=0 to 20 step 2 print i nextСледующий оператор отражает объектную структуру:
for each переменная in массив или объект оператор цикла nextПеременная принимает название элементов массива или элементов объекта.
.. | ../ | / |
function имя функции(список параметров) операторы функции имя_функции=результат end functionимя_функции задается произвольно.
function quadro(x) y=x*x quadro=y end function
sub имя(список параметров) операторы п/п exit sub end sub
.. | ../ | / |
Set a=Server.CreateObject("идентификатор")a - произвольное имя переменной
Server.ScriptTimeOut=10Если в течении указанного времени программа не будет выполнена, то сервер пошлет клиенту сообщение об ошибке, фактически задает предельное время для выполнения скрипта. В качестве примера - mail.ru, где обрабатывается это свойство, выводится своя страница с сообщениями для пользователя.
String s=Server.MapPath
.. | ../ | / |
String s=Request.Form(имя_поля_формы)
- только для метода POST
Считывает значения из указанного поля формы в случае, когда данные были переданы методом POST.
String i=Request.QueryString(имя_поля_формы)
- только для метода GET.
String s=Request.Cookies(имя_cookie)Считывает значение cookie с указанным именем.
.. | ../ | / |
Response.Cookies(имя_cookie)(имя_поля)=значениеЗаписывает в браузер клиента файл cookie. Все cookie записываются только в виде текста.
!!! Запись cookie в браузер клиента должна быть сделана до HTML-тегов.
Response.Expires=время_в_секундахЗадает сколько времени в секундах хранить страницу HTML в кэше браузера клиента (оперативная область памяти браузера). Следует задавать значение=0
Response.RedirectПеренаправляет пользователя по указанному URL-адресу.
Response.Write("текст в браузер")Здесь можно написать любые теги, может быть программа на JavaScript.
.. | ../ | / |
<% Операторы VBScript %>Теги HTML и VBScript могут идти вперемешку. Операторы VBScript можно встраивать в теги HTML.
<font size=<%Response.Write(i)%>>Если оператор VBScript не разорван, то вместо этой записи можно записать сокращенно
<font size=<%=i%>>Чтобы выполнить примеры, запустите
PWS (Personal Web Server)
:
Personal Web Manager >> Main>> StartВ
Advanced Options
создайте виртуальную директорию webm
и установите права доступа.
Занесите в соответствующую папку примеры. http://localhost/webm/ex0.asp http://localhost/webm/ex.asp http://localhost/webm/ex1.asp http://localhost/webm/ex2asp.html http://localhost/webm/cookies.asp http://localhost/webm/cookies1.asp http://localhost/webm/counter/counter.asp http://localhost/webm/counter/picture.asp
.. | ../ | / |
<HTML> <HEAD> <TITLE>Использование ASP</TITLE> </HEAD> <BODY> Ваш браузер:<%=Request.ServerVariables("http_user_agent")%> <BR> Текущее время:<%=now%> </BODY> </HTML>
.. | ../ | / |
<HTML> <HEAD></HEAD> <BODY> <%For i=1 to 7 %> <FONT SIZE=<%=i%>>Hello</FONT><BR> <%next%> </BODY> </HTML>
.. | ../ | / |
<html> <body> <!-- работает на стороне сервера, по запросу на сервер запускается программа ex1.asp, возвращается HTML-код http://localhost/webm/ex1.asp считываем значения всех переменных CGI --> <%for each i in Request.ServerVariables%> <%response.write(i)%>=<%=Request.ServerVariables(i)%> <br> <%next%> </body> </html>
.. | ../ | / |
http://localhost/webm/ex2asp.html
<HTML> <HEAD></HEAD> <BODY> <FORM ACTION="ex2.asp" METHOD=GET> Name:<BR> <INPUT TYPE=text NAME="i1"><BR> Password:<BR> <INPUT TYPE=text NAME="i2"> <HR> <INPUT TYPE=submit> </FORM> </BODY> </HTML>
"i1", "i2"
.ACTION="ex2.asp"
. Когда пользователь нажимает submit
, данные передаются на обработку в файл ex2.asp
.<HTML> <HEAD></HEAD> <BODY> <% If Request.ServerVariables("REQUEST_METHOD")="GET" Then %> Ваше имя: <%=Request.QueryString("i1")%><BR> Пароль: <%=Request.QueryString("i2")%> <% ElseIf Request.ServerVariables("REQUEST_METHOD")="POST" Then%> Ваше имя: <%=Request.Form("i1")%><BR> Пароль: <%=Request.Form("i2")%> <%End If %> </BODY> </HTML>
http://localhost/webm/ex2.asp?i1=paula&i2=12345Все, что после знака "?" это единая строка. Задача расчленить эту строку по полям. Проверяем, каким методом были переданы данные. Считываем значение переменной окружения сервера "REQUEST_METHOD". Если метод передачи "GET", считываем значение поля формы и выводим это значение в браузер:
<%=Request.QueryString("i1")%>При изменении метода передачи:
<FORM ACTION="ex2.asp" METHOD=POST>получится другая строка в адресе:
http://localhost/webm/ex2.asp,кодировка идет в стандартном потоке. В
ex2.asp
- проверка условия elseif
,
<%=Request.Form("i1")%>
считывает значения из указанного поля "i1"
, если метод POST.
.. | ../ | / |
http://localhost/webm/cookies.aspВ результате в браузер выводится строка:
fild1 FILD2=Fri%2C+21%2DJul%2D00+21%3A00%3A00
<%Response.Cookies("f1")="fild1"%> <%Response.Cookies("f2")("fild2")="Fri, 21-Jul-00 21:00:00"%> <html> <head> <%b=request.cookies("f1")%> <%c=request.cookies("f2")%> </head> <body> <%=b%><br> <%=c%> </body> </html>
.. | ../ | / |
http://localhost/webm/cookies1.aspВ результате в браузер выводится строка:
EXPIRES=Sun%2C+21%2DMay%2D00+21%3A00%3A00
<%Response.Cookies("dd")="dd"%> <%Response.Cookies("dd")("expires")="Sun, 21-May-00 21:00:00"%> <html> <head> <%b=request.cookies("dd")%> </head> <body> <%=b%> </body> </html>
"dd"
- "имя_cookie""expires"
- "имя_поля""Sun, 21-May-00 21:00:00"
- "значение_поля"request.cookies("dd")
может находиться в любом месте HTML-кода.Response.Cookies("dd")
- cookie должен формироваться до HTML-страницы.Name="имя_cookie"
- имя_cookie не путать с именем файла.Expires
- указывает до какого времени сохранять файл cookie у пользователя. Если expires не указан, cookie даже не записывается на диск, а хранится в кэше браузера.cookies1[1].htm
:C:\WIN98R\Temporary Internet Files\Content.IE5\ODEBS567\cookies1[1].htm
<html> <head> </head> <body> EXPIRES=Sun%2C+21%2DMay%2D00+21%3A00%3A00 </body> </html>
.. | ../ | / |
FileAccessОбеспечивает взаимодействие компонентов ASP.
ActiveXDataObject (ADO)Взаимодействие компонентов ASP с базами данных.
AdRotatorДля управления баннерами на странице (в какой последовательности показывать баннеры и какое время показывать каждый баннер) - почти не используется, т.к. нужно написать текстовый файл в специальном формате. Проще использовать обычные ссылки (href) и SetTimeOut.
ContentLinkingЭтот компонент предназначен для организации последовательной смены страниц в электронных газетах, на сайтах информационных агентств и т.д., используется редко, проще обычными ссылками (href).
BrowserCapabilitiesТолько заявлен. Предназначен для определения возможности браузера клиента (по функциям - можно ли загружать картинки, Java-апплеты).
Set a server.CreateObject("Scripting.FileSystemObject")Создание экземпляра объекта FileSystem, для этого указывается идентификатор "Scripting.FileSystemObject".
Создание нового текстового файла с помощью метода CreateTextFile
a.CreateTextFile("полный_путь_к_файлу")Открывает существующий текстовый файл
a.OpenTextFile("полный_путь_к_файлу")Закрывает текстовый файл.
a.close()
FileAccess
.TextStream
в f-переменной, нужно открыть файл:
Set f=a.Open TextFile("полный_путь_к_файлу")Можно использовать
Create
.
Метод ReadLine
считывает одну строку (до символа Enter) из открытого текстового файла:
f.ReadLine
.
Метод f.StepLine
обеспечивает пропуск одной строки при считывании.
Метод f.WriteLine
записывает одну строку в текстовый файл.
.. | ../ | / |
http://localhost/webm/counter/counter.asp
<HTML> <HEAD> <TITLE>Счетчик использующий ASP</TITLE> </HEAD> <BODY BGCOLOR=#eeeeee> <% Set fs = CreateObject("Scripting.FileSystemObject") Set a = fs.OpenTextFile("c:\inetpub\webm\counter\count.txt") b = a.ReadLine b=b+1 a.close Set a = fs.OpenTextFile("c:\inetpub\webm\counter\count.txt", 2) a.WriteLine(b) a.Close %> <B>Current visit is</B>:<% =b %> <BR> Graphics format: <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 BGCOLOR=white> <TR> <TD><IMG SRC=<% =b\1000-(b\10000)*10 %>.gif></TD> <TD><IMG SRC=<% =b\100-(b\1000)*10 %>.gif></TD> <TD><IMG SRC=<% =b\10-((b\100)*10) %>.gif></TD> <TD><IMG SRC=<% =b\1-(b\10)*10 %>.gif></TD> </TR> </TABLE> </BODY> </HTML>
Set fs = CreateObject("Scripting.FileSystemObject")Указатель Server опустили, т.к. он тут подразумевается.
К экземпляру fs применяем метод OpenTextFile, открываем текстовый файл count.txt на чтение (путь должен быть указан полностью):
Set a = fs.OpenTextFile("c:\inetpub\webm\counter\count.txt")В переменную b считываем содержимое первой строки файла:
b = a.ReadLineb=b+1 - операция неявного преобразования типа, т.к. операция "+" в VBScript чисто арифметическая; счетчик увеличился на единицу, т.е. отработал.
Set a = fs.OpenTextFile("c:\inetpub\webm\counter\count.txt", 2)
В файл count.txt записали новое значение счетчика:
a.WriteLine(b)Старое содержимое файла при записи нового полностью уничтожается.
Далее идет графический формат счетчика:
<IMG SRC=<% =b\1000-(b\10000)*10 %>.gif>
Внутрь HTML-тега можно вставить код VBScript-а. Здесь вычисляем имя файла. Имя файла совпадает с изображением числа.
0.gif - 0; 1.gif - 1; …
Предусмотрено 9999 посещений.
.. | ../ | / |
http://localhost/webm/counter/picture.aspТекст программы (picture.asp):
<HTML> <HEAD> <meta http-equiv="refresh" content=2> <TITLE>Использование ASP</TITLE> </HEAD> <BODY BGCOLOR=#eeeeee> <% Set fs = CreateObject("Scripting.FileSystemObject") Set a = fs.OpenTextFile("c:\inetpub\webm\counter\size.txt") b = a.ReadLine b=b+10 a.close Set a = fs.OpenTextFile("c:\inetpub\webm\counter\size.txt", 2) a.WriteLine(b) a.Close %> <IMG SRC=2.gif width=<%=b%> height=<%=b%>> </BODY> </HTML>
[ Home ] [ Top ] [ Web-дизайн ] [ Web-мастеринг ] [ Статьи, обзоры ] [ Литература ] [ Ссылки ]
[ Страничка юмора ]
[ Гостевая книга ] [ E-Mail ]