RTFM! статьи, советы, скрипты
::Заработок с помощью сайта ::JScript по-русски! ::Все русские мануалы::
МЕНЮ
О САЙТЕ
НОВОСТИ
СТАТЬИ
КНИГИ
АППЛЕТЫ
СВЯЗЬ

СЧЕТЧИКИ
Rambler's Top100
Рейтинг@Mail.ru
Яндекс цитирования

Что нужно знать про ASP

Автор: Step Сайт: http://tusowca.narod.ru/     Рейтинг: N/A из 7       <<НАЗАД
   
   
   Решил взяться за ASP? Молодец! Честно говоря, ASP используется для благородных целей совсем не всегда... ;), но это тема для будущих статей, потому что, прочитав эту статью, ты в своем мозгу должен уложить азы ASP, чтобы потом использовать ASP для хака.
   
   Что такое ASP и с чем его едят?
   
   ASP (Active Server Pages) - это среда программирования, которая обеспечивает возможность комбинирования HTML, скриптов и компонентов для создания Internet приложений, работающих на твоем сервере. ASP позволяет встраивать код в HTML документ и выполнять его на сервере. Код, который нужно выполнить на сервере, размещается внутри специальных тегов. Он может быть написан с использованием VBScript, JScript. В общем, если ты уже создавал Webсайты, использующие HTML, скрипты и различные компоненты, то можешь использовать ASP для объединения их вместе.
   
   Языки программирования, применяемые в ASP
   
   Первоначально ASP поддерживает лишь два языка программирования. Это VBScript и JScript. Если ты программил на MS Visual Basic, то сразу можешь начать использование VBScript. Если же ты не знаешь ни JScript, ни VBScript, то не расстраивайся, ведь можно установить поддержку (script engine) и для других языков. Они существуют для Rexx (http://wschaefer.purespace.de/rexx/rexxweb/wrw003.html), Perl (http://www.activestate.com/), Python. Более того, если ты работал на С, С++ или Java, то перейти на JScript будет очень просто, ведь их синтаксис очень схож с JScript'ом. Кстати, прочитав эту статью, ты усвоишь азы и VBScript, и JScript.
   
   Платформы, поддерживающие ASP
   
   Вообще-то, для ASP стандартной платформой являются Windows (оно и понятно, ведь ASP выпустила Microsoft), но существуют программы, поддерживающие ASP и на других платформах. Сервер от малоизвестной компании Chili!Soft, Inc. (www.chilisoft.com) - полнофункциональный аналог Microsoft's ASP, но позволяющий работать под Apache, Lotus, Netscape, O'Relly и Microsoft, запущенных под HP-UX, Linux, Windows NT, Sun Solaris and IBM AIX. Авторы также обещают поддержку других ОС и серверов в будущем. Еще один сервер от HalcyonSoftware, Inc (www.halcyonsoft.com) позволяет работать на любом сервере, под любой операционкой! (по крайне мере, по словам авторов)
   
   Редакторы для работы с ASP
   
   В принципе, работать с ASP можно в любом текстовом редакторе, хоть в notepad'e. Однако существуют специальные редакторы для этой цели. Можно обойтись и без них, но они обеспечивают дополнительные возможности, начиная от простейшей раскраски кода и заканчивая встроенными возможностями отладки скрипта. Вот те, с которыми мне приходилось работать: MS InterDev, входящий в состав Microsoft Visual Studio (http://msdn.microsoft.com/vinterdev/default.asp), Macromedia's Drumbeat 2000 (http://www.macromedia.com/software/drumbeat/), Home Site 4.5 Allaire Corp (http://www.allaire.com), Primal Script from Spaien Technologies (http://www.sapien.com/), ASP Express (http://www.aspexpress.com/), ASP-edit.
   
   ASP на твоем компе
   
   Для проверки ASP скриптов тебе придется их тестировать дома, но как? Для этого мы воспользуемся Microsoft's Personal Web Server (PWS). Для начала его надо поставить (я не думаю, что он тебе до этого был нужен). Это можно сделать либо с сидюка с win98, либо идти на сайт Микрософта (www.microsoft.com). После этого на твоем компе появится каталог Inetpub, где находится директория wwwroot. Вот в нее-то ты и заходи. Создай каталог myweb или что-нибудь подобное. После чего тебе потребуется написать ASP код. Сохрани его в эту директорию с именем script.asp. Готово. Теперь можешь заходить в свой любимый браузер и набирать в адресной строке: http://localhost/myweb/script.asp. Если работать не будет, то, скорее всего, это либо криво написанный скрипт, либо не активизированный PWS (Personal Web Server). ;)
   
   
   Синтаксис ASP
   В общем, начнем с того, что ASP файл - это html файл, только со вставками кода на VBScript или JScript, который заключен тегами. Причем без разницы - на том или на другом. Вот два примера c использованием обоих языков с традиционной задачей - вывести надпись "Hello World!". (В дальнейшем я буду пояснять прямо по ходу примера - мои объяснения будут после знака //. Их писать в исходный код не надо!)
   
   Стандартным языком считается VBScript, поэтому с него-то я и начну.
   
   <html>
   
   <body>
   
   <%
   
   response.write("Hello World!")
   
   // выводит надпись Hello World!
   
   %>
   
   </body>
   
   </html>
   
   То же самое, но на JScript. Замечу также, что, в отличие от VBScript, JScript требователен к регистру букв, так что тебе его придется соблюдать.
   
   <%@ language="javascript" %>
   
   // выключает VBScript, включает JScript
   
   <html>
   
   <body>
   
   <%
   
   Response.Write("Hello World!")
   
   // выводит надпись Hello World!
   
   %>
   
   </body>
   
   </html>
   
   
   Переменные
   
   Переменные используются для хранения информации. В следующем примеры ты узнаешь, как создать переменную, присвоить значение ей и вывести ее на экран вместе с другим тестом.
   
   <html>
   
   <body>
   
   <%
   
   Dim name
   
   // создает переменную name
   
   name="Step"
   
   // присваивает переменной name значение
   
   Step
   
   response.write("My name is: " & name)
   
   // выводит надпись my name is: + значение
   
   // переменной name. Знак "&" (без кавычек, естественно)
   
   // используется для присоединения одной переменной к другим.
   
   %>
   
   </body>
   
   </html>
   
   Массивы и циклы
   
   <html>
   
   <body>
   
   
   <%
   
   Dim name(5)
   
   // создает переменную с массивом name. Количество
   
   // значений в массиве указывается в круглых скобках
   
   // после названии переменной. (Кстати, не забудь, что
   
   // отсчет начинается с 0, а не с 1.)
   
   name(0) = "Step"
   
   // Присваивает первое (0) значение переменной name.
   
   name(1) = "SINtez"
   
   name(2) = "Holod"
   
   name(3) = "SideX"
   
   name(4) = "Centner"
   
   name(5) = "2PoisonS"
   
   // начало цикла
   
   For i = 0 to 5
   
   // Повторять цикл, пока i равно от 0 до 5, причем
   
   // после завершения каждого этапа цикла (команда next)
   
   // i увеличивается на 1.
   
   response.write(name(i) & "<br>")
   
   Next
   
   // конец этапа цикла
   
   %>
   
   </body>
   
   </html>
   
   
   Условие
   
   <html>
   
   <body>
   
   <%
   
   Dim h
   
   h = hour(now())
   
   // присваивает переменной h текущее время ( hour(now()) )
   
   // начало условия
   
   If h < 12 then
   
   // если h меньше 12, то делать то-то
   
   response.write("Good Morning!")
   
   
   else
   // если же наоборот, то делать другое
   
   response.write("Good day!")
   
   end if
   
   // конец условия
   
   %>
   
   </body>
   
   </html>
   
   Процедуры
   
   Процедуры - это подпрограммы, которые выполняют определенную задачу. Например, если у тебя в коде постоянно повторяется одно и то же действие, то можно заключить его в процедуру и потом лишь обращаться к ней, а не писать это действие заново. Это приводит к снижению объема исходного текста, тем самым облегчает поиск ошибок и правку исходника.
   
   <html>
   
   <head>
   
   <%
   
   sub calc(num1,num2)
   
   // создаем процедуру (команда sub). В скобках
   
   // указываем переменные, которые надо ввести при
   
   // обращении к процедуре.
   
   response.write(num1*num2)
   
   // смысл процедуры - вывести результат умножения
   
   // двух переменных, переданных процедуре.
   
   end sub
   
   // конец процедуры
   
   %>
   
   </head>
   
   <body>
   
   The result of the calculation is: <%call calc(3,4)%>
   
   // обращаемся к процедуре (команда call), передаем ей
   
   // значения переменной (в моем случае - это 3 и 4), и
   
   // процедура выводит результат (12).
   
   </body>
   
   </html>
   
   Теперь тот же пример, но на JScript'e.
   
   <html>
   
   <head>
   
   <script language="javascript" runat="server">
   
   function calc(num1,num2)
   
   // создание процедуры (команда function)
   
   {
   
   Response.Write(num1*num2)
   
   }
   
   </script>
   
   </head>
   
   <body>
   
   The result of the calculation is: <%calc(3,4)%>
   
   </body>
   
   </html>
   
   
   ASP и формы
   
   Формы - это основной метод передачи информации от пользователя к серверу через ASP. Для правильной обработки форм тебе необходимо разобраться с двумя основными методами передачи данных из формы к серверу. Итак, существует два метода - GET и POST.
   
   1. Метод GET передает данные из полей формы в URL запроса. То есть при нажатии кнопки Submit формируется URL со значениями полей формы. Hапример, www.xakep.ru/somescript.asp?name=Stepan&nickname=Step.
   
   2. Метод POST передает параметры и их значения из формы в заголовке запроса, а не через URL. Для доступа к таким параметрам необходимо воспользоваться методом Request.Form ("параметр").
   
   Примеры:
   
   
   C помощью GET:
   
   <html>
   
   <body>
   
   <form action="names.asp" method="get">
   
   Please type your first name:
   
   <input type="text" name="fname"><br><br>
   
   <input type="submit" value="Submit">
   
   </form>
   
   <%
   
   If Request.QueryString("fname")<>"" Then
   
   // если введено хоть какое-то значение, то...
   
   Response.Write ("Hello" & Request.QueryString("fname") & "!")
   
   // вывести текст, включая полученную через форму переменную fname.
   
   Response.Write ("<br>How are you today?")
   
   End If
   
   %>
   
   </body>
   
   </html>
   
   C помощью POST:
   
   <html>
   
   <body>
   
   <form action="names.asp" method="post">
   
   Please type your first name:
   
   <input type="text" name="fname">
   
   <br>
   
   <input type="submit" value="Submit">
   
   </form>
   
   %
   
   If Request.Form("fname")<>"" Then
   
   Response.Write ("Hello" & Request.Form("fname") & "!")
   
   Response.Write ("<br>How are you today?")
   
   End If
   
   %>
   
   </body>
   
   </html>
   
   Hо существуют и формы, где используются так называемые radiobuttons, которые предоставляют возможность выбора пользователю между несколькими вариантами.
   
   <html>
   
   <body>
   
   <%
   
   
   dim magazine
   cars=Request.Form("magazine")
   
   %>
   
   <form action="magazine.asp" method="post">
   
   <p>Please select your favorite magazine:</p>
   
   <input type="radio" name="magazine" value="Xakep"
   
   <%if magazine = "Xakep" then Response.Write("checked")%>>
   
   Xakep
   
   <br>
   
   <input type="radio" name="magazine" value=GameLand"
   
   <%if cars = "GameLand" then Response.Write("checked")%>>
   
   GameLand
   
   <br>
   
   <input type="submit" value="Submit">
   
   </form>
   
   <%
   
   if magazine<>"" then
   
   Response.Write("<p>Your favorite magazine is: " & magazine & "</p>")
   
   end if
   
   %>
   
   </body>
   
   </html>
   
   Думаю, что этот пример в объяснениях не нуждается :).
   
   Cookies
   
   Что такое cookie, ты, наверное, знаешь, поэтому объяснять тебе не буду, а сразу залью, как с ними работать через ASP скрипты. Для создания cookies используется команда Response.Cookies.
   
   <%
   
   Response.Cookies("number")=25
   
   // создается "куки" со значением 25
   
   %>
   
   Кстати, можно ограничить время действия "куки". Для этого нужно добавить окончание .Expires к команде Response.Cookies.
   
   <%
   
   Response.Cookies("number")=25
   
   Response.Cookies("number").Expires="May 1, 3001"
   
   %>
   
   А для получения cookies существует команда Request.Cookies.
   
   <%
   
   Response.Write(Request.Cookies("number"))
   
   // получить значение cookie number
   
   %>
   
   А теперь небольшой примерчик текстового счетчика на твою страницу с использованием cookies.
   
   <%
   
   response.cookies("NumVisits").Expires = date + 365
   
   // создаем cookie NumVisits, которая "исчезает"
   
   // через год (текущая дата + 365 дней)
   
   num=request.cookies("NumVisits")
   
   // переменной num присваиваем значение "куки" NumVisits
   
   If num = "" Then
   
   response.cookies("NumVisits") = 1
   
   // если num равно 0, то присвоить num значение "1",
   
   // то есть юзер зашел на страницу в первый раз
   
   Else
   
   response.cookies("NumVisits") = num + 1
   
   // если же нет, то к текущему значению num прибавляем "1"
   
   
   End If
   
   %>
   
   <html>
   
   <body>
   
   <%
   
   if num="" then
   
   %>
   
   Welcome! This is first time you are visiting this Web page.
   
   <%
   
   else
   
   %>
   
   You have visited this Web page <%response.write(num)%> times before
   
   <%
   
   end if
   
   %>
   
   </body>
   
   </html>
   
   Подключение файлов
   
   
   Данная функция позволяет создавать цепочки файлов, которые могут использоваться в разных контекстах. В любом месте своего .asp-файла можно включить команду include и подключить к текущему скрипту текст другого.
   
   Примеры:
   
   <!--#include virtual="some.asp"-->
   
   <!--#include file="some.asp"-->
   
   Кстати, подключаемый файл может иметь любое расширение - не обязательно asp, чаще всего используют inc.
   
   
   ASP в Инете
   
   http://www.activeserverpages.ru/
   
   Лучший российский сервер, посвященный ASP. Здесь ты всегда найдешь кучу информации, статей, примеров, учебников об ASP. Hельзя не сказать о разделе "обзор книг", где можно почитать о книгах тематики ASP, web-design'a, html. Кстати, если у тебя "денег куры не клюют", то можешь заказать их через Интернет-магазин (www.books.ru).
   
   
   http://www.aspcode.net/
   
   Я всегда считал, что учится программированию лучше всего на примерах. Вот этот сервак и дает такую возможность. Ведь здесь КУЧА исходников скриптов, написанных на ASP, - от простого счетчика до скриптов, используемых для организации баннерной системы. Советую также заглянуть в разделы 'Asp links' и 'Free Asp Hosts'. В первом ты найдешь кучу линков на ASP-ресурсы, а во втором можешь подобрать себе лучший сервак, предоставляющий бесплатный хостинг с поддержкой ASP.
   
   
   http://www.kamath.com/
   Учебники по ASP, всевозможные faq'и и tools'ы, облегчающие жизнь ASP-программеру.
   
   
   http://www.aspin.com/home
   
   Cайт, где ты найдешь ссылки на любой интересующий вопрос. Такого количества ссылок на сайты ASP-тематики я еще не видел.
   
   
   http://figa.boom.ru/index.html
   
   On-line справочник по asp. Действительно полезный сайт. Советую скачать его полностью - никогда не помешает. Ведь здесь есть все о командах и функциях ASP. Причем все на русском!
   
   
   
   


<<НАЗАД      ОЦЕНИТЬ СТАТЬЮ    ВЕРСИЯ ДЛЯ ПЕЧАТИ>>
Статья прочитана :  раз.




пейкюлю



 
 
 
 
 
pauk ©® 2000-2015. All rights reserved.
При перепечатке ссылка на сайт и указание обязательны.
Мнение администрации сайта не всегда совпадает с мнением автора.
Орфография и пунктуация - авторские.
Администрация не несет никакой ответственности за использование материалов.
.
Protected by Copyscape DMCA Takedown Notice Infringement Search Tool