Рефераты
 

Создание динамических сайтов средствами Dreamweaver

пособ хранения значений в семействе Form похож на способ хранения значений в семействе QueryString. Например, если пользователь заполнил форму, введя длинный список имен, их можно получить с помощью следующего сценария:

<% lngTotal = Request. Form ("Food"). Count

For i = 1 To lngTotal

Response. Write Request. Form ("Food") (i) & "<BR>"

Next%>

Для отправки в обозреватель содержимого, обозначенного ограничителями ASP, или из процедуры, используется метод Write объекта Response. Например, в следующей инструкции показано, как отправлять пользователям разные приветствия в зависимости от того, посещали ли они данную страницу раньше:

<% If blnFirstTime Then

Response. Write "<H3 ALIGN=CENTER>Welcome to the Overview Page. </H3>"

Else

Response. Write "<H3 ALIGN=CENTER>Welcome Back to the Overview Page. </H3>"

End If%>

Метод Response. Write используют в том случае, если нежелательно разрывать инструкцию на части с помощью разделителей или необходимо собрать строку, которая должна быть отправлена в обозреватель.

7. Процедуры. Процедура является группой команд сценария, выполняющих определенную задачу и возвращающих значение. Можно определять собственные процедуры и вызывать их из сценария любое число раз.

Определение процедур можно поместить в тот же файл. asp, из которого они будут вызываться, или можно поместить наиболее часто используемые процедуры в общий файл. asp и использовать директиву #include, чтобы включить его в другие файлы. asp, вызывающие процедуры. Кроме того, можно реализовать те же функции в компоненте COM. [21]

Определение процедур должны быть заключены в теги <SCRIPT> и </SCRIPT> и соответствовать правилам объявленного языка сценариев. Для процедур на языках, отличающихся от основного языка сценариев, служит элемент <SCRIPT>. Для процедур на основном языке сценариев служат ограничители сценариев (<% и%>).

При использовании тега HTML <SCRIPT> для указания, что сценарий следует выполнять на сервере, необходимо использовать два атрибута. Синтаксис использования тега <SCRIPT>:

<SCRIPT LANGUAGE=JScript RUNAT=SERVER>

определение процедуры

</SCRIPT>

Атрибут RUNAT=SERVER указывает, что сценарий должен быть выполнен на веб-сервере. Если не установить этот атрибут, данный сценарий будет выполнен в обозревателе клиента. Атрибут LANGUAGE определяет язык сценариев, используемый в данном блоке сценария. Можно указать любой язык, для которого на сервере установлен обработчик сценариев. Для указания VBScript случит значение VBScript. Для указания JScript случит значение JScript. Если не указать атрибут LANGUAGE, будет считаться, что в блоке сценария использован основной язык сценариев. [22]

Команды в блоке сценариев должны составлять одну или несколько полных процедур на выбранном языке сценариев. Например, следующие команды определяют процедуру JScript MyFunction.

<HTML>

<SCRIPT LANGUAGE=JScript RUNAT=SERVER >

function MyFunction ()

{ Response. Write ("Вызвана процедура MyFunction (). ") }

</SCRIPT>

Для вызова процедуры ее имя следует включить в команду. При вызове процедур JScript из VBScript необходимо использовать скобки после имени процедуры; если процедуре не требуются аргументы, оставьте скобки пустыми. При вызове процедур VBScript или JScript из JScript после имени процедуры всего следует ставить скобки.

В VBScript для вызова процедуры также можно использовать ключевое слово Call. Однако, если вызываемой процедуре требуется аргументы, список аргументов должен быть заключен в скобки. Если ключевое слово Call опущено, также следует опустить скобки, в который заключен список аргументов. Если для вызова любой встроенной или пользовательской функции используется синтаксис Call, значение, возвращаемое функцией, теряется.

Чтобы передать весь массив процедуре VBScript, используется имя массива и следующие за ним пустые скобки; в JScript - пустые квадратные скобки. [21]

8. Компоненты и объекты. Компоненты COM являются основой построения настоящих веб-приложений, обладающих мощными возможностями. Компоненты реализуют функции, позволяющие решать с помощью сценариев конкретные задачи, такие как выполнение финансовых транзакций или проверка данных. Кроме того, в ASP имеется набор основных компонентов, значительно улучшающих создаваемые сценарии.

Компонент COM представляет собой повторно используемый блок инструкций. Компонент предназначен для построения программ и обеспечивает решение некоторой задачи или набора задач. Чтобы создать веб-приложение, компоненты объединяют друг с другом, в том числе посредством сетей. Компоненты COM обеспечивают решение общих задач, избавляя пользователей от необходимости самим создавать соответствующие программы. [20]

Компонент - это исполняемый код, содержащийся в библиотеке динамической компоновки (. dll) или исполняемом файле (. exe). Компоненты предоставляют один или несколько объектов, каждый из которых является законченным набором инструкций, выполняющим в рамках данного компонента определенные функции. Каждый объект имеет методы (запрограммированные процедуры) и свойства (атрибуты функционирования). Чтобы воспользоваться объектом, предоставленным компонентом, следует создать один экземпляр нужного объекта и назначить ему имя переменной. Для создания экземпляра объекта применяется метод ASP Server. CreateObject или тег HTML <OBJECT>. С помощью инструкции присвоения переменной, используемой в данном языке сценариев, экземпляру объекта присваивается некоторое имя. [15]

Методом называется действие, которое может быть выполнено над объектом или с помощью объекта. Синтаксис вызова метода: Объект. Метод параметры

Параметры изменяются в зависимости от метода.

Свойство является атрибутом, описывающим объект. Свойства определяют характеристики объекта, например его тип, или описывают состояние объекта, например включен объект или отключен. Синтаксис: Объект. Свойство

Иногда значение свойства можно прочитать или задать. Кроме того, некоторые объекты допускают добавление новых свойств.

9. Работа с файлами. Директивы включения дают возможность включения в файл содержимого другого файла перед обработкой его веб-сервером. В ASP этот механизм поддерживается только директивой #include. Для вставки файла в файл. asp используется следующий синтаксис:

<! - #include virtual | file ="имя_файла" - ->

Ключевые слова virtual и file обозначают тип пути, используемый для включения файла, а имя_файла представляет собой путь и имя файла, который требуется включить.

Включаемые файлы могут иметь любое расширение, но удобно давать им расширение, отличающее их от других файлов.

Ключевое слово virtual указывает, что путь начинается с виртуального каталога. Ключевое слово file указывает, что используется относительный путь. Относительный путь начинается с каталога, содержащего файл, в который включается другой файл. [22] Синтаксис включения файлов с атрибутом SRC приведен в таблице 1.

Таблица 1

Синтаксис включения файлов с атрибутом SRC

Тип пути

Синтаксис

Пример

Относительный

SRC="путь\имя_файла"

SRC="Utilities\Test. asp"

Виртуальный

SRC="/путь/имя_файла"

SRC="/MyScripts/Digital. asp"

Виртуальный

SRC="\путь\имя_файла"

SRC="\RegApps\Process. asp"

1.4 XML

1. Общие сведения. С появлением языка XML реализовалась идея о том, что любые данные должны сопровождаться собственным описанием. Широкое распространение, которое получил расширяемый язык разметки (Extensible Markup Language, XML) за время, прошедшее с 1998 года, когда первый стандарт XML был опубликован консорциумом W3C (World Wide Web Consortium), служит подтверждением того, что многие отрасли науки и промышленности созрели для серьезных изменений в области описания данных.

Одна из причин быстрого распространения XML заключается в том, что Интернет способствует знакомству широких слоев пользователей с HTML, стандартным языком разметки веб-страниц.html помог многим пользователям получить представление о том, как с помощью тегов в простой текст можно включать дополнительную информацию. Основываясь на этой идее, можно сделать следующий небольшой, хотя и нетривиальный, шаг - перейти к использованию тегов XML для описания данных. [9]

Наиболее очевидным преимуществом XML является возможность расширения этого языка для решения специфических для каждого пользователя задач. Эта возможность делает XML столь привлекательным для тех, кому приходится работать с различными типами данных в какой-либо специальной области. Другое, не столь очевидное преимущество заключается в том, что для любых расширений этого языка при проверке и обработке данных можно продолжать использовать инструментарий XML, если только при записи данных соблюдены правила языка.

Оказалось, что подобная гибкость - как раз то, что требуется для многих практических приложений. Компании, которые обмениваются информацией с другими компаниями через Интернет, все чаще и чаще отказываются от стандарта EDI (Electronic Data Interchange - электронный обмен данными) в пользу XML. Предполагается, что эти так называемые В2В (Business-to-business - бизнес для бизнеса) приложения содержат наибольшее количество данных в формате XML во всем Интернете. [14]

Расширяемый язык разметки (XML) является подклассом стандартного языка разметки (Standard Generalized Markup Language, SGML). XML был задуман как гибкий и в то же время формальный метаязык для использования в Интернете.

Метаязык (metalanguage) - это язык, предназначенный для описания других языков. Например, можно сказать, что словарь английского языка в совокупности с английской грамматикой образуют метаязык, описывающий английский язык. [29]

Назначение языка XML - описывать языки разметки. В языке разметки (markup language) для структурирования данных используются теги. Язык гипертекстовой разметки (Hypertext Markup Language, HTML), наиболее распространенный на сегодняшний день язык разметки, исходно был написан на SGML, но мог бы быть и в какой-то степени был написан и на XML.

В то время как HTML содержит фиксированный набор тегов, в XML теги вообще отсутствуют. Вместо этого XML позволяет программисту самому создать такой язык разметки, который в точности соответствует требованиям конкретного приложения.

В приложениях XML обычно используются следующие типы данных и вспомогательные функции:

сам файл XML, имеющий строго определенную структуру;

определение типа документа (Document Type Definition, DTD), где определяется структура файла XML (необязательный элемент);

таблицы стилей, содержащие информацию о том, как данные должны быть отформатированы при выводе (необязательный элемент);

процессор XML и различные служебные функции для манипулирования данными и переформатирования данных. [2]

Поскольку документы HTML создаются обычно в предположении, что их будут читать с помощью веб-браузера, многие теги HTML указывают, как следует форматировать данные, но не содержат никакой информации для обычного человека. Назначение XML заключается как раз в том, чтобы отделить данные, содержащиеся в документе, от кода, который задает формат отображения этих данных. Это свойство XML позволяет извлекать данные из документа автоматически, то есть с помощью программных средств. [14]

2. Области применения XML. XML можно применять как на стороне сервера, так и на стороне клиента.

XML на стороне клиента. На стороне клиента XML позволяет достичь такого уровня соответствия конкретным условиям представления данных, которого очень трудно или невозможно достичь с использованием HTML. Например, для таких устройств, как PDA (Personal Digital Assistant - "карманный" компьютер, предназначенный для выполнения некоторых специальных функций) или мобильный телефон, требуется, чтобы страницы были отформатированы совсем не так, как для стандартных веб-браузеров. Обычно, если даже имелась готовая страница, предназначенная для веб-браузера, для подобных устройств приходилось полностью ее переделывать, то есть фактически создавать новую версию этой страницы. Однако благодаря структурированным данным документа XML, в котором содержательные данные отделены от форматирующих указаний, все, что требуется сделать для приведения страницы в соответствие с каждым конкретным отображающем ее прибором, - это применить к имеющимся данным нужную таблицу стилей.

XML на стороне сервера. В наши дни XML оказывает очень большое влияние на организацию работы сервера. Один из способов применения XML на стороне сервера - передача сообщений (messaging), то есть обмен данными между приложениями или компьютерами. Чтобы приложения и компьютеры могли обмениваться информацией, для них должен быть определен единый формат сообщений. Основная причина, по которой XML прекрасно подходит для создания форматов передачи сообщений, - это его простота. XML подчиняется строго определенному стандарту, он не связан с какой-либо операционной системой или производителем, он совместим с большим количеством инструментальных средств и приложений, которые на протяжении многих лет разрабатывались для SGML. Требование строгого соответствия документов XML стандартам, установленным для правильно оформленных документов, гарантирует, что любой анализатор XML будет в состоянии прочесть и осмыслить любой документ XML. Кроме того, гораздо больше людей знакомы с языками разметки, чем с форматами сообщений, необходимыми для построения систем EDI. Благодаря XML формат сообщений может разработать любой, кто способен составить правильно оформленный документ XML.

Другой областью применения XML в веб-документах является определение метасодержимого. Метасодержимое, или сведения о содержимом, позволяет сделать работу поисковых машин гораздо эффективнее. [29]

3. Использование XML для хранения данных. XML подходит и для создания баз данных. В документе XML используется древовидная структура хранения данных. Хотя по большому счету хранение данных в виде документов XML не слишком эффективно, у такого способа хранения есть свои преимущества. Как и в отношении передачи сообщений, самым большим преимуществом является простота. Древовидная структура - интуитивно понятный и знакомый способ организации данных. Кроме того, почти любой тип древовидной структуры - от реляционных баз данных до объектно-ориентированных баз данных и иерархических структур - может быть представлен с помощью дерева данных XML. Другое существенное преимущество использования XML для хранения данных заключается в том, что XML поддерживает набор символов Unicode. Следовательно, любой символ любого алфавита мира можно включить в документы XML на "законном основании". [16]

4. Определение правильно оформленного документа XML. Весь текст XML-документа можно грубо разделить на две категории, символьные данные и разметку. К разметке (markup) относится все, что начинается с символа < и заканчивается символом > или начинается с символа & и заканчивается парой символов &;. Символьные данные (character data) - это все, что не является разметкой. Символьные данные можно подразделить еще на две категории: проверенные символьные данные (Parsed Character DATA, PCDATA) и непроверенные символьные данные (unparsed character data). Как следует из названия, данные PCDATA - это данные, проверенные анализатором XML.

Элемент, лишенный содержимого, называется пустым элементом (empty element). Открывающий и закрывающий теги пустого элемента можно объединить в один тег, поместив в его конец косую черту: <br/>. В XML также допускается запись пустого элемента с помощью открывающего и закрывающего тегов, например <br></br>.

Фактически существуют два типа пустых элементов: те, которые заранее определены как пустые и в принципе не могут иметь содержимого, и те, которые оказались пустыми случайно. Чтобы различить эти два типа элементов, рекомендуется использовать пару (открывающий тег, закрывающий тег) для тех элементов, которые не содержат данных, и один тег для тех элементов, которые определены как пустые.

У элементов могут быть атрибуты. Атрибут (attribute) - это пара имя-значение, расположенная в открывающем теге элемента.

В XML значения атрибутов должны быть заключены в одинарные или двойные кавычки. [27]

5. DTD и допустимость документа XML. DTD, или определение типа документа, - это способ явным образом определить структуру класса документов XML.

Основным базовым типом объявления в DTD является объявление элемента, <! ELEMENT>. Формат объявления элемента:

<! ELEMENT имя_элемента правило>

Каждый элемент, который используется в документе XML, должен быть определен в DTD. Существует несколько правил, которым нужно следовать при именовании элементов:

имена элементов не должны содержать символа < или >;

имя элемента должно начинаться с буквы или символа подчеркивания. После первой буквы в имени элемента может содержаться любое количество букв, цифр, дефисов, точек или символов подчеркивания;

имена элементов не могут начинаться с последовательности xml (в любой комбинации верхнего или нижнего регистров);

двоеточия запрещены, они применяются только в пространствах имен. [14]

6. Использование XSL. Расширяемый язык таблиц стилей (Extensible Stylesheet Language, XSL) - это язык для конструирования таблиц стилей. Таблицы стилей XSL используются для описания внешнего вида документов XML, предназначенных для чтения людьми. [29]

Применение таблицы стилей к документу процессор таблиц стилей осуществляет в два этапа. Первый этап - трансформация дерева (tree transformation). Трансформация дерева позволяет упорядочивать элементы, а также перемещать данные XML и выполнять вычисления с этими данными. Второй этап - форматирование (formatting). Форматирование фактически представляет собой процесс задания стиля отображения данных, размеров шрифтов, разрывов страниц и т.п.

Спецификация XSL содержит три различных языка, предназначенных для осуществления этих двух задач:

XML Path Language (XPath) - язык для создания ссылок на различные части документа XML;

XSL Transformations (XSLT) - язык, предназначенный для генерации дерева документа;

Extensible Stylesheet Language (XSL) - XSLT плюс описание набора объектов форматирования и свойств форматирования. [28]

Например, мы имеем файл ex01. xml, содержащий следующий код:

<? xml version="1.0" encoding="WINDOWS-1251"? >

<tutorial>

<title>"Война и мир"</title>

<author>Лев Толстой</author>

</tutorial>

Добавим в него строку <? xml-stylesheet type='text/xsl' href='ex01. xsl'? > и создадим XSL-файл ex01. xsl, содержащий следующий код:

<xsl: stylesheet version="1.0" xmlns: xsl="http://www.w3.org/TR/WD-xsl">

<xsl: template match="/">

<p><strong><xsl: value-of select=" // author"/></strong></p>

<p><xsl: value-of select=" // title"/></p>

</xsl: template>

</xsl: stylesheet>

7. Требования к правильно оформленному документу XML.

Каждый элемент должен иметь открывающий и закрывающий теги, за исключением пустых элементов, для которых предусмотрен специальный синтаксис пустого элемента;

Имя открывающего тега должно совпадать с именем закрывающего тега. Язык XML чувствителен к регистру;

Элементы должны быть правильно вложены друг в друга;

Имена элементов не должны содержать символа < или > и должны начинаться с буквы или символа подчеркивания;

Имена элементов не могут начинаться с символов xml (в любой комбинации верхнего и нижнего регистров);

В именах элементов не должно содержаться двоеточия, за исключением пространств имен;

Атрибуты не должны появляться более одного раза в открывающем теге или в теге пустого элемента;

Значения атрибутов должны быть заключены в кавычки;

В значениях атрибутов не должны содержаться прямые или непрямые ссылки на внешние сущности;

Текст, подставляемый вместо любой сущности, на которую имеется прямая или косвенная ссылка, являющаяся значением некоторого атрибута, не должен содержать символа < (это не относится к сущности &lt;); [2]

Выводы по Главе I

Macromedia Dreamweaver MX - одна из самых мощных программ, поддерживающих все современные стандарты Интернета и невероятно облегчающая выполнение даже самых сложных задач.

Интерфейс программы по сравнению с предыдущими версиями претерпел изменения. Новый стиль заметно облегчает работу с программой. Рабочая область Dreamweaver содержит следующие окна и панели: окно документа, стандартное раскрывающееся меню, панель Properties, панель Insert, группу панелей Design, Code, Application, Files для удобства разработчика.

Нами были рассмотрены технологии РНР, ASP и XML. Для описания технологий РНР и ASP были отмечены следующие положения: общие сведения о технологии, общие характеристики, синтаксис, переменные и константы, управляющие конструкции, обработка запросов, функции, классы и объекты, работа с файлами. Технология XML была рассмотрена отдельно, так как не является технологией создания серверных сценариев.

PHP - это язык обработки гипертекста, используемый на стороне сервера, конструкции которого вставляются в HTML-текст. Его цель - позволить максимально быстро создавать динамически генерируемые web-страницы.

РНР имеет много возможностей (совместимость с различными серверами и платформами, поддержка различных технологий, использование различных протоколов, наличие функций для работы с текстовыми данными любых форматов, включая XML, работа с базами данных, простой синтаксис и т.д.), но несмотря на это существует недостаток - бесплатность. Для создателей рядовых сайтов это плюс, но для серьезных компаний, дорожащих своей репутацией, это минус. Технология практически идеальна для разработки развлекательного или коммерческого интернет-проекта (например, интернет-магазина).

Active Server Pages (ASP) - это серверная среда для разработки и выполнения динамических интерактивных веб-приложений. Средства ASP позволяют объединить возможности HTML-страниц, команд сценариев и компонентов COM в интерактивных веб-страницах и мощных веб-приложениях, делают удобным и легким процесс их создания и изменения.

ASP также имеет большое количество возможностей (удобный способ объединение Server-Side Script c HTML, скриптовый подход, концепция "Session", использование компонентов COM, удобный набор объектов-утилит, обработка ошибок, интеграция XML и др.), но уступает РНР по быстроте обработки сценариев (РНР не использует COM как основу работы), совместимостью с различными операционными системами (ASP рассчитан на Windows), работе с СУБД (ASP ориентирован прежде всего на СУБД от Microsoft). Встроенный в ASP-страницы SQL усложняет код и делает его непереносимым на другой источник данных. ASP можно однозначно порекомендовать для разработки сложных приложений на платформе MS Windows (IIS) с использованием технологий COM, DCOM, ActiveX и т.д.

Расширяемый язык разметки (XML) является подклассом стандартного языка разметки (SGML). XML был задуман как гибкий и в то же время формальный метаязык для использования в Интернете. Его назначение - описывать языки разметки. XML можно применять как на стороне сервера, так и на стороне клиента.

XML подходит и для создания баз данных. В документе XML используется древовидная структура хранения данных. Хотя по большому счету хранение данных в виде документов XML не слишком эффективно, у такого способа хранения есть свои преимущества. Как и в отношении передачи сообщений, самым большим преимуществом является простота.

Глава II. Методика выбора оптимального средства разработки

Исследовав популярные технологии разработки динамических сайтов - ASP, PHP и XML - мы можем приступить к выделению критериев, характеризующих эти технологии с целью разработки на их основе методики выбора оптимального средства создания сайта в зависимости от конкретных прикладных задач.

2.1 Выделение критериев сравнения популярных интернет-технологий

Разработка каждого сайта диктует конкретные требования в зависимости от прикладных задач: структура, вид работы с информацией (получение, хранение, передача, обработка), а также от характеристик самой технологии. Исходя из этих требований, мы можем выделить критерии сравнения следующих интернет-технологий: ASP, PHP и XML.

Простота. Легкость освоения, простой и понятный синтаксис. Предварительное знакомство с языками VBScript или JScript гарантирует легкое освоение ASP; с языками С и Perl - технологии РНР. В XML теги отсутствуют, вместо этого XML позволяет программисту самому создать такой язык разметки, который соответствует требованиям конкретного приложения.

Гибкость. Легкая расширяемость приложений по мере необходимости. Присутствует во всех трех технологиях.

Компактность. Отсутствие лишних тегов, наличие встроенных функций для уменьшения кода. Технология ASP является более компактной по сравнению с PHP. В XML содержатся только теги описания данных; теги разметки и различных сценариев исключены.

Совместимость. Совместимость с другими технологиями, возможность интеграции в различные языки программирования. Все три технологии совместимы друг с другом и прочими технологиями.

Эффективность. Быстрота обработки сценариев. "Движок" PHP является транслирующим интерпретатором, что позволяет обрабатывать сценарии с достаточно высокой скоростью. ASP использует COM как основу работы, поэтому имеет несколько меньшую скорость. В XML сценарии отсутствуют.

Работа с базами данных. Возможность извлечения информации из баз данных, записи в базу, хранения данных в базе и т.д. PHP работает с огромным количеством СУБД, в то время как ASP ориентирован прежде всего на СУБД от Microsoft. В XML имеется возможность как занесения данных в базу из xml-файла, так и формирование из базы данных xml-файла.

Работа с файлами. Возможность вставки файла, операции с файлами данных (хранение, извлечение, запись информации). В технологиях ASP и PHP присутствуют одинаково эффективные возможности работы с файлами. В XML имеется возможность интеграции двоичных файлов в xml-документ.

Обработка данных. Возможность структурирования, сортировки, поиска информации и т.д. Технологии ASP и PHP позволяют производить все виды обработки данных. В XML можно производить сортировку и поиск данных с помощью языка таблиц стилей XSL.

Использование HTML-форм. Сбор и отправка данных, полученных с помощью форм, на сервер для последующей обработки. Технологии ASP и PHP поддерживают использование HTML-форм, в XML этой возможности нет.

Обмен данными. Возможность обмена данными с другими приложениями. Имеет место в технологиях ASP и PHP. Имеется возможность обмена данными xml-файлами между собой.

Наличие прямой обратной связи. Наличие прямой, без посредничества, связи между пользователем и сервером. Присутствует в ASP и PHP, отсутствует в XML.

Использование таблиц стилей. Возможность создания таблиц стилей для описания внешнего вида документов. В HTML (куда интегрируются ASP и PHP) это CSS, в XML это XSL.

Использование СОМ. Компоненты COM обеспечивают решение общих задач, избавляя пользователей от необходимости самим создавать соответствующие программы. Присутствует в ASP и PHP, отсутствует в XML.

Создание серверных сценариев. Основа любого языка для создания динамических сайтов. Присутствует в ASP и PHP, отсутствует в XML.

Описание данных. Важная функция, позволяющая представлять данные в едином формате, единым способом записи. Отсутствует в ASP и PHP, присутствует в XML.

Наличие встроенных функций и объектов. Уменьшение кода, облегчение работы разработчика. В технологии ASP имеется более обширный набор встроенных функций и объектов по сравнению с PHP. В XML они отсутствуют.

Написание процедур. Возможность написания собственных функций для упрощения работы. Присутствует в ASP и PHP, отсутствует в XML.

Использование сеансов (сессий). Используя сессии, можно создавать приложения, способные автоматически "узнавать" каждого посетителя узла и собирать относящиеся к нему сведения. Присутствует в ASP и PHP, отсутствует в XML.

Обработка ошибок. Важная функция, позволяющая избавиться от ошибок в коде на начальных этапах разработки. Присутствует в ASP и PHP, отсутствует в XML.

Поддержка различных протоколов. Возможность поддержки взаимодействия с различными сервисами посредством соответствующих протоколов (протокол управления доступом к директориям LDAP, протокол работы с сетевым оборудованием SNMP, протоколы передачи сообщений IMAP, NNTP и POP3, протокол передачи гипертекста HTTP и т.д.). PHP поддерживает намного больше различных протоколов по сравнению с ASP. В XML поддержка протоколов отсутствует.

Обеспечение безопасности. Обеспечение сохранности конфиденциальной информации, ограничение доступа пользователей к некоторым файлам и каталогам, невозможность просмотра исходного текста сценариев в браузере. Присутствует в ASP и PHP, отсутствует в XML.

Интеграция программного кода в HTML-код. При разработке приложений удобно внедрять текст сценария в HTML-код. Присутствует в ASP и PHP, отсутствует в XML

Поддержка различных кодировок. Вне зависимости от того, в какой стране и на каком языке был разработан сайт, данные в нем будут отображаться корректно. Все три технологии поддерживают различные кодировки.

2.2 Методика выбора оптимального средства разработки динамических сайтов

Опираясь на выделенные нами критерии сравнения интернет-технологий, мы можем разработать методические рекомендации в зависимости от конкретного технического задания, то есть набора требований к содержанию и функциям разрабатываемого сайта (табл.2).

Таблица 2

Выбор технологии в зависимости от технического задания

В чем существует необходимость

да\нет

Что выбрать

Обратная связь

да

PHP, ASP

нет

XML

Экономическая эффективность

да

ASP, PHP, XML

нет

-

Полноценный интерфейс

да

PHP, ASP

нет

XML

Возможность изменения контента в ответ на некие действия посетителя

да

ASP, PHP

нет

XML

Регистрация и авторизация посетителей сайта

да

PHP, ASP

нет

XML

Безопасность сайта и баз данных

да

ASP, PHP

нет

XML

Использование интерактивных модулей - опросов, голосований с возможностью формирование новых и хранения старых

да

PHP, ASP

нет

XML

Простая модификация сайта (добавление/удаление страниц)

да

ASP, PHP, XML

нет

-

Отслеживание статистики посещений сайта

да

PHP, ASP

нет

XML

Организация электронных каталогов товаров и услуг, вывод прайс-листов

и т.д.

да

ASP, PHP, XML

нет

-

Высокий уровень интеграции элементов информационной системы, построенных с помощью определенной технологии

да

РНР, ASP

нет

XML

Простота разработки

да

РНР, ASP

нет

XML

Мы можем сделать вывод, что для разработки сайтов, не содержащих сценариев и не имеющих возможности обратной связи, следует использовать технологию XML; для разработки несложного, однородного по форме содержания сайта - технологию РНР; для разработки несложного, разнородного по форме содержания сайта - технологию ASP; для разработки сложной разнородной системы следует задействовать все три технологии.

После получения технического задания разработчик может обратиться к приведенным выше методическим рекомендациям и, ответив на вопросы из таблицы, выбрать в результате оптимальное средство разработки сайта. Если задача разнородна, и в результатах наблюдается большой разброс, то следует использовать гибридный проект, то есть с использованием нескольких технологий.

Выводы по Главе II

Мы выделили следующие критерии сравнения технологий PHP, ASP и XML: простота, гибкость, компактность, совместимость, эффективность, работа с базами данных, работа с файлами, обработка данных, использование HTML-форм, обмен данными, наличие прямой обратной связи, использование СОМ, описание данных, наличие встроенных функций и объектов, использование сеансов, поддержка различных протоколов, обеспечение безопасности, поддержка различных кодировок и т.д. Опираясь на выделенные критерии, мы разработали методические рекомендации в зависимости от конкретного технического задания. Использование этих рекомендаций поможет разработчику выбрать оптимальное средство создания сайта. Выбор технологии зависит от сложности и формы содержания сайта - для разработки сайтов, не содержащих сценариев и не имеющих возможности обратной связи, следует использовать технологию XML; для разработки несложного, однородного по форме содержания сайта - технологию РНР; для разработки несложного, разнородного по форме содержания сайта - технологию ASP; для разработки сложной разнородной системы следует задействовать все три технологии.

Глава III. Разработка динамических веб-страниц на базе различных технологий средствами Dreamweaver

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

Для разработки теста была выбрана технология ASP, для разработки записной книжки - технология РНР, для разработки электронного прайс-листа - технология XML.

3.1 Записная книжка на базе РНР

Структура записной книжки: HTML-форма для отправки пользователем данных на сервер (файл index.html), серверный сценарий для обработки полученной информации (board. php) и файл для хранения данных (notes. txt). Пользователь вводит данные, они поступают на сервер, записываются в файл и затем выводятся на HTML-страницу. Новая введенная пользователем информация добавляется в файл данных и также выводится на HTML-страницу.

Создание формы в Dreamweaver - Insert > Form > Form. Затем требуется заполнить нужные поля (рис.7).

Аналогично происходит добавление элементов управления в форму - Insert > Form > TextArea (вставка текстового поля) и Insert > Form > Button (вставка кнопки). Так же заполняем нужные поля.

Рис.7. Создание формы

Конечный код формы:

<form action="board. php" method="post" name="board">

<textarea name="message" cols="30" rows=""></textarea><br><br>

<input name="write" type="submit" value="Написать">

</form>

Файл notebook. php тоже содержит код формы, а также теги php:

<? php

$date = date ("Y-m-d H: i: s");

// запись в переменную date текущей даты и времени

$s = $date. "<br>". $message. "<hr>\r\n";

// запись в переменную s даты, данных, введенных пользователем в форму, и горизонтальной линии. \r\n - переход на новую строку

$f = @fopen ("notes. txt","a+");

// открытие файла notes. txt для чтения и записи

fwrite ($f,$s);

// добавление содержимого переменной s в файл

fclose ($f);

// закрытие файла

include ("notes. txt");? >

// вывод содержимого файла на HTML-страницу

Конечный вид страницы представлен на рис.8.

Рис.8. Записная книжка

3.2 Электронный прайс-лист на базе XML

В Dreamweaver отсутствует механизм автоматического создания документа xml, поэтому написание кода проходило "вручную", основываясь на теоретических знаниях. Каждый элемент (в нашем случае - книгу) описываем с помощью одинакового набора тегов - book, code (код), title (название), author (автор), price (цена) и quantity (количество) (рис.9). Для того чтобы позже была возможность применения таблицы стилей XSL, введены дополнительные теги: booksCaption, booksCode, booksTitle, booksAuthor, booksPrice, booksQuantity.

Рис.9. Вид документа без применения XSL

Для применения к документу xml таблицы стилей XSL в файле BookStore. xml прописывается следующая строка:

<? xml-stylesheet type="text/xsl" href="BookStore. xsl"? >.

Файл BookStore. xsl содержит следующий код:

<xsl: stylesheet version="1.0" xmlns: xsl="http://www.w3.org/TR/WD-xsl">

<xsl: template match="/">

<body bgcolor="#F8F8FF">

<font face="Verdana">

<h4><font color="#191970">

<xsl: value-of select=" // booksCaption"/>

</font></h4>

<table border="1">

<tr bgcolor="#B0C4DE">

<td align="center"><strong><xsl: value-of select=" // booksCode"/></strong></td>

<td align="center"><strong><xsl: value-of select=" // booksTitle"/></strong></td>

<td align="center"><strong><xsl: value-of select=" // booksAuthor"/></strong></td>

<td align="center"><strong><xsl: value-of select=" // booksPrice"/></strong></td>

<td align="center"><strong><xsl: value-of select=" // booksQuantity"/></strong></td></tr>

<xsl: for-each select="BookStore/books/book" order-by="number (price)">

<tr bgcolor="#F5F5F5">

<td><xsl: value-of select="code"/></td>

<td><xsl: value-of select="title"/></td>

<td><xsl: value-of select="author"/></td>

<td><xsl: value-of select="price"/></td>

<td><xsl: value-of select="quantity"/></td></tr>

</xsl: for-each>

</table>

</font>

</body>

</xsl: template>

</xsl: stylesheet>

Вид документа с применением таблицы стилей представлен на рис.10.

Рис.10. Вид документа с применением XSL

3.3 Тест на базе ASP

Мы выяснили, что Dreamweaver не дает возможности создания asp-страниц с активностью на стороне сервера, поэтому было решено создать asp-страницу, содержащую скрипт, написанный на языке VBScript и выполняющийся на стороне клиента. Скрипт заключается в теги <script> и </script>.

Файл Test. asp содержит форму для сбора данных и скрипт для их обработки. Создание формы в Dreamweaver - Insert > Form > Form. Вставка кнопки - Insert > Form > Button, вставка переключателей - Insert > Form > Radio Button. Код кнопки:

<input type = "button" value="Проверка" onclick="valid ()">

При нажатии на кнопку происходит вызов функции valid ().

Создаем группу переключателей для каждого вопроса, задаем им уникальное имя и команду при нажатии - это требуется для работы скрипта.

Фрагмент кода формы:

<b>1. Сколько лет длилась столетняя война? </b>

<input type="radio" name="zad1" onclick="zad1_1 ()"> 100

<input type="radio" name="zad1" onclick="zad1_2 ()"> 116

<input type="radio" name="zad1" onclick="zad1_3 ()"> 99

При нажатии на переключатель вызывается функция, обозначенная после onclick.

При написании скрипта сначала задаем переменные и обнуляем их:

<script Language = VBScript>

dim ot1, ot2, ot3, ot4, ot5

ot1=0: ot2=0: ot3=0: ot4=0: ot5=0

Затем для каждого вопроса задаем значение - правильный (1) и неправильный (0) ответ:

sub zad1_1 ()

ot1=0

end sub

sub zad1_2 ()

ot1=1

end sub

sub zad1_3 ()

ot1=0

end sub

Для описания функции valid () задаем переменную ot для хранения результатов теста

sub valid ()

ot=""

и обрабатываем каждый ответ

if ot1=1 then

ot=ot+"Ответ 1 правильный"

else

ot=ot+"Ответ 1 неправильный"

end if

ot=ot+chr (13)

Далее выводим сообщение с результатами:

MsgBox ot, 0, "Результаты"

window. navigate ("Test. asp")

end sub

Конечный вид страницы представлен на рис.11.

Рис.11. Тест.

Выводы по Главе III

Нами были поставлены следующие задачи: разработка записной книжки, теста и электронного прайс-листа. С помощью Dreamweaver были созданы заготовки, реализующие эти задачи, на базе технологий РНР, XML и ASP. Выбор в пользу того или иного средства разработки делался на основании разработанных ранее методических рекомендаций.

Были приведены следующие данные по каждой заготовке: структура документа, процесс разработки страниц, фрагменты программного кода с комментариями и конечный вид страниц.

Заключение

Macromedia Dreamweaver MX - одна из самых мощных программ, поддерживающих все современные стандарты Интернета и невероятно облегчающая выполнение даже самых сложных задач. Dreamweaver MX позволяет создавать сайты на базе различных веб-технологий: HTML, XHTML, XML, ColdFusion, ASP, ASP.net, JSP и PHP.

PHP - это язык обработки гипертекста, используемый на стороне сервера, конструкции которого вставляются в HTML-текст. Его цель - позволить максимально быстро создавать динамически генерируемые web-страницы. РНР имеет много возможностей (совместимость с различными серверами и платформами, поддержка различных технологий, использование различных протоколов, наличие функций для работы с текстовыми данными любых форматов, включая XML, работа с базами данных, простой синтаксис и т.д.), но несмотря на это существует недостаток - бесплатность. Для создателей рядовых сайтов это плюс, но для серьезных компаний, дорожащих своей репутацией, это минус. Технология практически идеальна для разработки развлекательного или коммерческого интернет-проекта (например, интернет-магазина).

Active Server Pages (ASP) - это серверная среда для разработки и выполнения динамических интерактивных веб-приложений. Средства ASP позволяют объединить возможности HTML-страниц, команд сценариев и компонентов COM в интерактивных веб-страницах и мощных веб-приложениях, делают удобным и легким процесс их создания и изменения.

ASP также имеет большое количество возможностей (удобный способ объединение Server-Side Script c HTML, скриптовый подход, концепция "Session", использование компонентов COM, удобный набор объектов-утилит, обработка ошибок, интеграция XML и др.), но уступает РНР по быстроте обработки сценариев (РНР не использует COM как основу работы), совместимостью с различными операционными системами (ASP рассчитан на Windows), работе с СУБД (ASP ориентирован прежде всего на СУБД от Microsoft). Встроенный в ASP-страницы SQL усложняет код и делает его непереносимым на другой источник данных. ASP можно однозначно порекомендовать для разработки сложных приложений на платформе MS Windows (IIS) с использованием технологий COM, DCOM, ActiveX и т.д.

Расширяемый язык разметки (XML) является подклассом стандартного языка разметки (SGML). XML был задуман как гибкий и в то же время формальный метаязык для использования в Интернете. Его назначение - описывать языки разметки. XML можно применять как на стороне сервера, так и на стороне клиента. XML подходит и для создания баз данных. В документе XML используется древовидная структура хранения данных. Хотя по большому счету хранение данных в виде документов XML не слишком эффективно, у такого способа хранения есть свои преимущества. Как и в отношении передачи сообщений, самым большим преимуществом является простота.

Мы выделили критерии сравнения технологий PHP, ASP, XML и, опираясь на них, разработали методические рекомендации в зависимости от конкретного технического задания. Выбор технологии зависит от сложности и формы содержания сайта - для разработки сайтов, не содержащих сценариев и не имеющих возможности обратной связи, следует использовать технологию XML; для разработки несложного, однородного по форме содержания сайта - технологию РНР; для разработки несложного, разнородного по форме содержания сайта - технологию ASP; для разработки сложной разнородной системы следует задействовать все три технологии.

С помощью Dreamweaver были созданы заготовки, реализующие различные задачи (записная книжка, тест, электронный прайс-лист), на базе технологий РНР, XML и ASP. Выбор в пользу того или иного средства разработки делался на основании разработанных ранее методических рекомендаций. По каждой заготовке были приведены следующие данные: структура документа, процесс разработки страниц, фрагменты программного кода с комментариями и конечный вид страниц.

Нами были рассмотрены возможности применения мощного и эффективного инструмента разработки динамических сайтов для реализации технологий ASP, PHP и XML. В работе были изложены теоретические основы сайтостроения средствами разных технологий, реализуемых в рамках одного инструмента. Была разработана методика, которая впоследствии может применяться разработчиками для выбора оптимального средства создания динамических веб-сайтов в зависимости от прикладных задач.

Библиографический список

1. Бардзелл Д. Macromedia Dreamweaver MX 2004 с ASP, ColdFusion и PHP. Из первых рук. - М.: ЭКОМ, 2006. - 235 с.

2. Бумфрей Ф., Диренцо О. XML. Новые перспективы. - М.: ДМК-Пресс, 2000. - 272 с.

3. Веллинг Л., Томсон Л. Разработка Web-приложений с помощью PHP и MySQL. - М.: Вильямс, 2005. - 429 с.

4. Дунаев В.В. Самоучитель PHP. - СПб.: Питер, 2007. - 160 с.

5. Дунаев В.В. Самоучитель. Сценарии для Web-сайта. PHP и JavaScript. - СПб.: BHV-Санкт-Петербург, 2006. - 279 с.

6. Зольников Д.С. PHP 5. Как самостоятельно создать сайт любой сложности. - М.: НТ Пресс, 2005. - 109 с.

7. Кузнецов М.В., Симдянов И.В. PHP 5. Практика создания web-сайта. - СПб.: BHV-Санкт-Петербург, 2005. - 401 с.

8. Куссуль Н.Н., Шелестов А.Ю. Использование PHP. Самоучитель. - М.: Вильямс, 2006. - 117 с.

9. Кэгл К. XML. - М.: ЛОРИ, 2006. - 425 с.

10. Леонтьев Б.К. PHP 5.0 для начинающих, или как создать динамичный Web-сайт. - М.: Новый издательский дом, 2006. - 109 с.

11. Мазуркевич А., Еловой Д. PHP: настольная книга программиста. - М.: Новое знание, 2006. - 242 с.

12. Мак Т., Вест Р. Dreamweaver MX 2004. Шаг за шагом. Самоучитель. - М.: ЭКОМ, 2006. - 312 с.

13. Молер Дж., Боуэн К. Dreamweaver MX 2004. Руководство Web-дизайнера. - М.: ЭКСМО, 2005. - 67 с.

14. Старыгин А. XML Разработка WEB-приложений. - СПб.: BHV-Санкт-Петербург, 2003. - 199 с.

15. Фландерс Й. ASP - взгляд изнутри. Для программистов. - М.: ДМК-Пресс, 2001. - 135 с.

16. Хабибуллин И.Ш. Самоучитель XML. - СПб.: BHV-Санкт-Петербург, 2003. - 111 с.

17. Хестер Н. Создание Web-страниц в Dreamweaver. - М.: НТ Пресс, 2005. - 104 с.

18. Шкрыль А.А. PHP - это просто. Программируем для Web-сайта. - СПб.: BHV-Санкт-Петербург, 2006. - 161 с.

19. http://library. mnwhost.ru/webdev/asp/asp. php

20. http://gun. cs. nstu.ru/IISHelp/iis/htm/asp/iiwanew. htm

21. http://www.stfw.ru/page. php? id=3182

22. http://web. wbz.ru/index. php? page=lesns&hid=2&pid=2

23. http://php. segmenta.ru/manual/ru/intro-whatcando. php

24. http://webzona.org/article/a-3.html

25. http://stud. h16.ru/education/php/

26. http://www.phpclub.net/manrus/

27. http://www.sytchev.ru/xml/xml

28. http://www.uni-vologda. ac.ru/students/tav/xsl. htm

29. http://www.citforum.ru/internet/xslt/xslt. shtml

30. http://argon.com.ru/internet/webmastering/webtech

Страницы: 1, 2


© 2010 BANKS OF РЕФЕРАТ